我想通过Chrome中的Javascript在我的计算机上执行本地程序。在Firefox中,它可以按如下方式完成(在about:config中将'signed.applets.codebase_principal_support'设置为 true 之后):
function run_cmd(cmd, args) {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var file = Components.classes["@mozilla.org/file/local;1"]
.createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(cmd);
var process = Components.classes["@mozilla.org/process/util;1"]
.createInstance(Components.interfaces.nsIProcess);
process.init(file);
process.run(false, args, args.length);
}
Chrome的等效代码是什么?
答案 0 :(得分:1)
在没有扩展程序的Chrome中无法实现此功能。 这需要扩展中的NPAPI插件,请参阅http://code.google.com/chrome/extensions/npapi.html,
答案 1 :(得分:0)
我认为你不能。 Chrome非常关注此类内容,因此也就是沙盒
答案 2 :(得分:0)
在Chrome中执行此操作的首选方法是使用Native Messaging和Chrome扩展程序。 NPAPI正在逐步淘汰。
答案 3 :(得分:-3)
Javascript无法在浏览器外部进行外部通信。例如,没有磁盘输入/输出,没有与主机操作系统(如Windows / Linux)的通信。 Javascript本身就更加严格,因为它由浏览器本身执行。