2017年11月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
無料ブログはココログ

« PowerShellで、標準入力をMessageBoxに出すMessageBox.PS1を作る。(その2) | トップページ | PowerShellの.PS1ファイルを起動するバッチファイル(その3) »

2007年8月19日 (日)

PowerShellで、標準入力をMessageBoxに出すMessageBox.PS1を作る。(その3)

(その1)と(その2)は、相互補完関係にあるため、両方の技を合わせます。
これで、標準入力がコンソール、パイプ、リダイレクションのすべての場合に対応します。

MessageBox.PS1

$stdin=@()
$input|foreach{$stdin+=$_}
if($stdin.length){
  $stdin=[String]::Join("`r`n",$stdin)
}else{
  $stdin=[System.Console]::In.ReadToEnd()
}
[void][Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
[System.Windows.Forms.MessageBox]::Show($stdin)

« PowerShellで、標準入力をMessageBoxに出すMessageBox.PS1を作る。(その2) | トップページ | PowerShellの.PS1ファイルを起動するバッチファイル(その3) »