起動時に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();
}
})();