我尝试开发一个Firefox附加组件,通过浏览器的上下文菜单(或VBScript文件或CMD命令)运行exe文件。我试过这些但没有结果:
我总是有一个非常受欢迎的结局,说“安全问题不允许这样”。有没有人有没有死胡同的想法?
答案 0 :(得分:2)
我尝试了这些但没有结果: 使用Firefox附加SDK(nsIProcess& ctypes)
addon sdk提供了一种开箱即用的方法:system/child_process
Firefox插件具有计算机上用户帐户的全部功能。如果用户可以启动进程,那么firefox插件也可以启动。
所以我想知道是什么原因导致你没有结果"。
答案 1 :(得分:2)
要使用常规nsIProcess启动,请执行以下操作:
var procFinned = {
observe: function (aSubject, aTopic, aData) {
console.log('bash nsIProcess completed');
}
};
var nsifile = new FileUtils.File('c:\blah\blah.exe');
var process = Cc['@mozilla.org/process/util;1'].createInstance(Ci.nsIProcess);
var args = [];
process.init(nsifile);
process.runAsync(args, args.length, procFinned);