起動時にWScriptからCScriptへ自動で切り替える(JScript)
ExplorerからWSHの.js
ファイルをダブルクリックするとwscript.exe
で起動されるが、cscript.exe
で起動したい場合も多い。
そこでwscript
で起動した場合に、引数を含めてcscript
で起動し直すスニペットを作成した。
以下のコードを.js
ファイルの先頭部分に配置すればOK。
即時関数で括ってあるのでグローバルな環境を汚染せず、他の箇所に影響しないようにしている。
// WScriptで起動時にCScriptに変更
(function(){
if(WScript.FullName.match(/WScript\.exe$/i)){
var wshell = new ActiveXObject("WScript.Shell");
var cmd = ["cscript", "\"" + WScript.ScriptFullName + "\""];
for(var i = 0; i < WScript.Arguments.Count(); i++){
cmd.push("\"" + WScript.Arguments.Item(i) + "\"");
}
wshell.Run(cmd.join(" "), 1, false);
WScript.Quit();
}
})();