我尝试使用nsIProcess执行.exe文件。但它没有工作,也没有给出任何错误信息。我正在使用firefox 10和Windows 7.任何人都可以建议我解决方案吗?感谢
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsIProcess);
file.initWithPath("C:\\Users\MJ\\Desktop\\Example.FaceDetection.exe");
file.launch();
答案 0 :(得分:10)
您在MJ
之前忘了一个反斜杠:
file.initWithPath("C:\\Users\\MJ\\Desktop\\Example.FaceDetection.exe");
因此,您的应用程序无法执行,因为找不到它。也就是说,运行应用程序的更好方法通常是nsIProcess - 它允许您指定命令行参数,它还将提供有用的反馈:
var params = ["foo", "bar"];
var process = Components.classes["@mozilla.org/process/util;1"]
.createInstance(Components.interfaces.nsIProcess);
process.init(file);
process.run(false, params, params.length);