PowerShell メッセージボックスを使い倒せ!
以前、PowerShellにおけるメッセージボックスについての記事を書いたところ好評であった。
よって、メッセージボックス関連の第2弾をお送りしたい。
▼前回のメッセージボックス関連の記事
PowerShell メッセージボックスを表示しろ! - 業務改善!Windows PowerShell入門
さて、PowerShellでメッセージボックスをやろうと思っても、残念ながら、組み込みメソッドがない。(※特に準備せずともいきなり使えるもの)
だが、COMオブジェクトを利用をすれば、メッセージボックスが実装可能となる。
・どうやって実装するんや?!
以下の手順で、あっという間にできるゼ!
・New-Objectコマンドレットを使用し、COMオブジェクトのインスタンスを作成する。
・ComObject(com)パラメータのProgIDとして、Wscript.Shellを指定する。
・Wscript.ShellのインスタンスでPopupメソッド使用して、あとは使い倒す!
※COMとはMicrosoftが提供する部品化されたプログラムのことであり、アプリケーションに組み込むことができる。
$ws = New-Object -com Wscript.Shell
$ws.Popup("俺は高木ブーだ!")
だが、これは見た目があまりよろしくない。
タイトルが「Windows Script Host」とそのまんま出すのは、いけ好かないだゼ!
よって、Popupメソッドの引数と戻り値について、詳しく解説したい。
$ws.Popupと打ちこむと、以下のように「引数は4つ、戻り値がある」ということが分かる。
ではこれがどうなっているかだが、以下にすべてまとめた。
・引数はどうなっとるんや?!
内 容 | |
---|---|
引数1 | メッセージ |
引数2 | 自動クローズ秒数 |
引数3 | タイトル |
引数4 | 表示するボタン |
・引数2は自動クローズ秒だ。0を指定すれば、ボタンを押すまで表示され続ける。
1を指定すれば、1秒後に閉じる。
・引数3はタイトルだ。
・引数4は表示するボタンで、0~5のどれかを指定する。
・表示するボタン(引数4)の設定値はどうなっとるんや?!
設定値 | |
---|---|
OK | 0 |
OK、キャンセル | 1 |
中止、再試行、無視 | 2 |
はい、いいえ、キャンセル | 3 |
はい、いいえ | 4 |
再試行、キャンセル | 5 |
・戻り値はどうなっとるんや?!
戻り値 | |
---|---|
O K | 1 |
キャンセル | 2 |
中 止 | 3 |
再試行 | 4 |
無 視 | 5 |
は い | 6 |
いいえ | 7 |
※ただし、自動クローズをさせた場合は、-1が戻り値となる。
▼以下は検証用のソースである。
#COMオブジェクト Wscript.Shell $ws = New-Object -com Wscript.Shell #============================ # Popupメソッド #---------------------------- # 引数1:メッセージ # 引数2:自動クローズ秒数 # 引数3:タイトル # 引数4:表示するボタン #============================ # 戻り値 #---------------------------- # O K :1 # キャンセル:2 # 中 止 :3 # 再試行 :4 # 無 視 :5 # は い :6 # いいえ :7 #============================ #表示ボタンと設定値(引数4) #OK:0 $ws.Popup("元祖高木ブー伝説",0,"曲名",0) #OK、キャンセル:1 $ws.Popup("元祖高木ブー伝説",0,"曲名",1) #中止、再試行、無視:2 $ws.Popup("元祖高木ブー伝説",0,"曲名",2) #はい、いいえ、キャンセル:3 $ws.Popup("元祖高木ブー伝説",0,"曲名",3) #はい、いいえ:4 $ws.Popup("元祖高木ブー伝説",0,"曲名",4) #再試行、キャンセル:5 $ws.Popup("元祖高木ブー伝説",0,"曲名",5)
だがしかし、インフォメーションやクエスチョンマークなどのアイコン設定ができないのは......
何だか寂しいゼ!
PowerShell、オーマイガっ!
ロリポップ!レンタルサーバー!はあなたの「やってみたい!」を応援します!
ロリポップ!なら、ホームページ、ブログ、ネットショップ…
これらが今すぐ、そして簡単にできちゃう!
マニュアルやライブチャットを完備しているので、ホームページ初心者でも安心。
これだけついてるのに月額100円(税抜)~ととってもお得。
もちろん無料のお試し期間も10日間あるので安心ですね。
▼ロリポップ!レンタルサーバーはこちら