#navi(../)
* コマンドを起動した時に黒いプロンプト画面を表示させない方法 [#l7b566d8]
VBScriptでDOSコマンドを実行した時、DOS窓(コマンドプロンプト画面)が表示されてしまいます。~
本資料では、DOS窓(コマンドプロンプト画面)の表示を抑止しDOSコマンドを実行する方法を以下に記します。
#contents
#htmlinsertpcsp(win-top.html,win-sp.html)
* vbhideを指定することによりDOS窓(コマンドプロンプト画面)を表示させないようにする [#n9084531]
vbhide指定することによりDOS窓(コマンドプロンプト画面)の表示を抑止することができます。~
以下にvbhideを使用したVBScriptとvbhideを使用しないVBScriptの2つを紹介します。~
VBScriptからはDOSコマンドであるdirコマンドを実行しファイルに出力しています。
** vbhide未使用 [#k2a3406b]
以下のスクリプトを実行するとdirコマンド実行時にDOS窓(コマンドプロンプト画面)が一瞬表示されます。~
#ref(not_vbhide.zip)
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c dir > dir.txt"
** vbhide使用 [#bc8943a2]
以下のスクリプトを実行するとdirコマンドを実行してもDOS窓(コマンドプロンプト画面)は表示されず、dirコマンドの出力結果ファイルdir.txtが作成されます。~
#ref(vbhide.zip)
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c dir > dir.txt", vbhide
以上、VBScriptでDOSコマンド実行時にDOS窓(コマンドプロンプト画面)の表示を抑止する方法でした。
**&color(red){追記}; [#a4375d20]
上記のrunメソッドを次のように指定すると正常に動作しませんでした。~
ws.run "cmd /c コマンド", vbhide, True
以下のようにvbhideの値を直に指定した場合、正常に動作しました。
ws.run "cmd /c コマンド", 0, True
#htmlinsertpcsp(win-btm.html,win-sp.html)