この方法で Javascript からバッチ ファイルを呼び出しています。
function runBatch(){
var exe = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);
exe.initWithPath("C:\\test.bat");
var run = Components.classes['@mozilla.org/process/util;1'].createInstance(Components.interfaces.nsIProcess);
run.init(exe);
var parameters = ["hi"];
run.run(false, parameters,parameters.length);
}
私のテストバッチファイルは次のとおりです。
echo on
echo %1
pause
exit
ただし、バッチ ファイルを呼び出すたびに、デスクトップからバッチ ファイルを実行した場合と同様に、コマンド プロンプトは表示されません。これを修正し、バッチ ファイルのコマンド プロンプトを表示するにはどうすればよいですか?
編集 明確にするために、cmd.exe プロセスが起動されます - タスク バーに表示されます。しかし、ウィンドウは表示されません。このスニペットは同様に動作します。
function runCmd(){
var exe = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);
exe.initWithPath("C:\\WINDOWS\\system32\\cmd.exe");
var run = Components.classes['@mozilla.org/process/util;1'].createInstance(Components.interfaces.nsIProcess);
run.init(exe);
run.run(false, null,0);
}