Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Firefox加载项中执行命令?_Javascript_Firefox_Firefox Addon - Fatal编程技术网

Javascript 如何在Firefox加载项中执行命令?

Javascript 如何在Firefox加载项中执行命令?,javascript,firefox,firefox-addon,Javascript,Firefox,Firefox Addon,我对编写Firefox插件还很陌生,不过,我已经把一个工作扩展拼凑到了一起,除了它的核心部分 在代码中的某个时刻,我需要对文件执行一个系统命令。我在网上发现了一个被剪掉的网站,并试图对其进行修改,但运气不佳。从myxpi/components/script.js: var cmd = '/usr/bin/somecommand' var args = ['-option', 'value', f.path ]; var execFile = Components.classes["@mozi

我对编写Firefox插件还很陌生,不过,我已经把一个工作扩展拼凑到了一起,除了它的核心部分

在代码中的某个时刻,我需要对文件执行一个系统命令。我在网上发现了一个被剪掉的网站,并试图对其进行修改,但运气不佳。从my
xpi/components/script.js

var cmd = '/usr/bin/somecommand'

var args = ['-option', 'value', f.path ];

var execFile = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
var process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess);

execFile.initWithPath(cmd);

if (execFile.exists()) {
    process.init(execFile);
    process.run(false, args, args.length);
}
有人能告诉我这里怎么了吗?我已经组装了这个命令,并获得了文件名,但是我无法让Firefox执行这个代码片段

这是真正需要的
execFile
initWithPath
createInstance
等东西吗??我只想像在CLI中一样执行命令:

$ somecommand -option value filename

如果
cmd
args
更改为:

var cmd = '/usr/bin/say';
var args = ['hello', 'world' ];

正如Neil所说,我们需要更多的故障排除信息。启用并检查是否有任何消息。

您如何知道它没有执行,是否出现异常?