VBScript で、同じベース名(拡張子を除いたファイル名)のバッチファイルを非表示で実行する方法を書いていきます。
1. ファイルの作成
フォルダに、同じベース名の VBS と BAT ファイルを用意します。
今回の例では、test.vbs
と test.bat
を作成しました。
2. VBSの編集
VBScript をエディターで開いて、以下の内容を保存します。
Option Explicit ' ベース名が同じバッチファイルをカレントフォルダから取得 Dim bat: bat = WScript.CreateObject( _ "Scripting.FileSystemObject" _ ).GetBaseName( _ WScript.ScriptName _ ) + ".bat" ' バッチファイルを非表示で実行 Const hide = 0 Dim cmd: cmd = "cmd /c " + bat WScript.CreateObject("WScript.Shell").Run cmd, hide
3. VBSの実行
VBScript をダブルクリック等で実行すると、バッチファイルがウィンドウ非表示で実行されます。
他のバッチを実行する場合
非表示で実行したいバッチがあれば、今回の VBS をコピー・リネームして実行します。