- ベストアンサー
バッチファイルのPAUSE
バッチファイルのPAUSEを使って、 実行するかどうか待機状態のまま 指定時間何もキーを触らなければ 自動的に黒のコマンドプロンプトを 終了させる方法はないですか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
Option Explicit Dim objWshShell Set ObjWshShell = WScript.CreateObject("WScript.Shell") Dim result result = objWshShell.Popup("10秒待ちます",10,"タイトル",vbOKCancel) if result = vbOK Then objWshShell.Run "A.EXE",1 End If ----------------------------------- こんな感じでOKです。 スクリプト側でA.EXEの終了待ちを行いたい場合は、 objWshShell.Run "A.EXE",1,True と、最後にTrueを追加してください。
その他の回答 (3)
- ivory-star
- ベストアンサー率57% (16/28)
#2です。 先ほどのスクリプトは、xxxx.vbsのように、拡張子を.vbsで保存してください。 xxxx.vbsをダブルクリックするか、コマンドラインから wscript xxxx.vbs のように実行します。 'WSH'で検索すると多少か情報が見つかるかと思いますが、プログラミング経験が無いと確かに少し辛いかもしれません(^^;
補足
無知ですみません OKの時、A.EXEを実行するとしたら、 下記のようになりますが、実行時のエラー になります どのように記述すればいいのでしょう 何もしないと時間切れでうまく終了します Option Explicit Dim objWshShell Set ObjWshShell = WScript.CreateObject("WScript.Shell") Dim result result = objWshShell.Popup("10秒待ちます",10,"タイトル",vbOKCancel) if result = vbOK Then A.EXE End If
- ivory-star
- ベストアンサー率57% (16/28)
VBScriptじゃダメですか? ただしメッセージボックスが出てしまいますが、これだとWindows標準(Win98以降?)の機能だけで済みます。 -------------------------------- Option Explicit Dim objWshShell Set ObjWshShell = WScript.CreateObject("WScript.Shell") Dim result result = objWshShell.Popup("10秒待ちます",10,"タイトル",vbOKCancel) if result = vbOK Then WScript.Echo "OK" Else WScript.Echo "キャンセル" End If --------------------------------
補足
お世話になります なんかむずかしそうですね! BATファイルにそれをのせて実行すると一瞬で 終わりましたが、XPですが 何かインストールはしなくていいのでしょうか すみません 素人で。。。。
- OsieteG00
- ベストアンサー率35% (777/2173)
choiseコマンド(または同等品)を用いてキー入力が無いときの初期値を決めておいてその場合は終了させてみては?
お礼
お世話になりました うまくいきました ありがとうございます