バッチファイルでメッセージボックスを出す(その2)

バッチファイルからメッセージボックスを出す方法です。
バッチから PowerShellを呼び出し、そこでメッセージボックスを出します。

画像



実行サンプルです。記事冒頭の画像のメッセージボックスが出ます。


@powershell -Command "Add-Type -AssemblyName System.Windows.Forms;$result = [System.Windows.Forms.MessageBox]::Show(\"メッセージ文1`nメッセージ文2`nメッセージ文3\", 'タイトル', 'YesNoCancel', 'Asterisk');exit $result;"
@echo 戻り値は %ERRORLEVEL% です
pause



メッセージボックスの表示では、メッセージ文、タイトル、ボタン、アイコンを指定できます。
書式は次のものです。


@powershell -Command "Add-Type -AssemblyName System.Windows.Forms;$result = [System.Windows.Forms.MessageBox]::Show(\"メッセージ文\", 'タイトル', '表示するボタン', '表示するアイコン');exit $result;"


メッセージ文 は、\" で括ると、「`n」で改行できます。



表示するボタン は、次の値を指定します。
どのボタンが押されたかは、実行サンプルのようにすると、バッチの %ERRORLEVEL% で取得できます。
指定する値で表示されるボタンと値の関係は、次のようになります。()内が %ERRORLEVEL% の値です。

  • AbortRetryIgnore

  • 中止(3)
    再試行(4)
    無視(5)

  • OK

  • OK(1)

  • OKCancel

  • OK(1)
    キャンセル(2)

  • RetryCancel

  • 再試行(4)
    キャンセル(2)

  • YesNo

  • はい(6)
    いいえ(7)

  • YesNoCancel

  • はい(6)
    いいえ(7)
    キャンセル(2)


表示するアイコン に指定する値と、アイコンは次のようになります。

Asterisk、Information
画像

Error、Hand、Stop
画像

Exclamation、Warning
画像

Question
画像

None
アイコンは表示されません




参考


PowerShellでダイアログを表示し入力結果を取得 | 読書とプログラミングを中心とした覚書ブログ
MessageBoxButtons 列挙型 (System.Windows.Forms)
MessageBoxIcon 列挙型 (System.Windows.Forms)

ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 3

なるほど(納得、参考になった、ヘー) なるほど(納得、参考になった、ヘー)
驚いた

この記事へのコメント

この記事へのトラックバック