バッチファイルの黒い画面(DOS窓)を非表示にする方法

スクリプト
福ロウ
福ロウ

本日の記事では、バッチファイルで処理中のコマンドプロンプトの黒い画面(DOS窓)を非表示にする方法についてご紹介いたします。

皆さんは、バッチファイルを処理させる場合に利用者に黒い画面(以下、DOS窓という。)を表示させたくない場合があると思います。そのようなとき、VBS(Visual Basic Script)からバッチファイルを呼び出すことによりDOS窓を非表示にすることができます。

はじめに下記の内容でバッチファイル(hoo.bat)を作成します。

【hoo.bat】
@echo off

rem 3回繰り返し
for /l %%n in (1,1,3) do (

    rem 現在日付(yyyy/mm/dd)を表示
    echo %date%
    
    rem 3秒休止
    timeout /nobreak 3 > nul
)

こちらのバッチファイルを実行すると下記のDOS窓が画面にしばらく表示された後に閉じられます。

このDOS窓を画面に出さないようにするためには、下記のようにバッチファイル(hoo.bat)を呼び出すVBSファイル(hoo.vbs)を作成します。

【hoo.vbs】
Set ws = CreateObject("Wscript.Shell") 
ws.run "cmd /c .\hoo.bat",vbhide

VBSファイル(hoo.vbs)を実行すると、バッチ処理中は非表示する設定なので、DOS窓は表示されなくなります。

“vbhide”を指定することによりDOS窓の黒い画面の表示を抑止することができます。

今回の記事では、バッチファイルの実行時に表示されるDOS窓の黒い画面を非表示にする方法についてお伝えしました。
次回もお楽しみに!

タイトルとURLをコピーしました