首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > 跨浏览器开发 >

firefox 启动带参数程序解决方案

2012-03-15 
firefox 启动带参数程序本人写了一个客户端程序,通过IE启动成功,为了兼容firefox 也能启动该客户端程序编

firefox 启动带参数程序
本人写了一个客户端程序,通过IE启动成功,
为了兼容firefox 也能启动该客户端程序
编写了如下js代码

 function OpenProg()

//可执行程序参数

netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); 
var process = Components.classes['@mozilla.org/process/util;1'].getService(Components.interfaces.nsIProcess); 
var targetFile = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile); 

  var oURL ="123e735e-7cd5-4d72-8a97-9d9900b00163|";
   
  targetFile.initWithPath("xx.exe"); 
  process.init(targetFile); 
  var arguments = [oURL]; //arguments参数必须是数组,否则下面语句不执行 
 process.run(false, arguments, arguments.length);  

}

第一次OpenProg()可以打开程序成功,第二次执行OpenProg()该打开时,提示一下错误。
需要重新启动forefox 才能再次启动程序

错误提示
[Exception... "Component returned failure code: 0xc1f30002 (NS_ERROR_ALREADY_INITIALIZED) [nsIProcess.init]" nsresult: "0xc1f30002 (NS_ERROR_ALREADY_INITIALIZED)" location: "JS frame :: file:///C:/Program%20Files/firefoxTest.html :: helloOpen :: line 58" data: no]

问:
  是不是程序已经加载如进程,所以不能再加载第二次加载,要不会出错?需要消耗该进程实例对吗
  请高手指点,散分
   


[解决办法]
还是没人回答啊,我帮顶了!
[解决办法]
没做过,帮你顶一下
[解决办法]
把客户端程序做成ACTIVEX插件.在网页里
<object classid="xxxxxxxxxx">
<设置你的参数和值>
</object>
[解决办法]

热点排行