Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/144.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
如何利用c++;来自javascript xpcom组件的xpcom组件 我用C++开发了XPCOM组件。我的组件中有GetHWND()方法。我还使用javascript开发了另一个xpcom组件。我想在javascript xpcom组件中使用GetHWND函数。我使用下面的代码来实现这一点_Javascript_C++_Xpcom - Fatal编程技术网

如何利用c++;来自javascript xpcom组件的xpcom组件 我用C++开发了XPCOM组件。我的组件中有GetHWND()方法。我还使用javascript开发了另一个xpcom组件。我想在javascript xpcom组件中使用GetHWND函数。我使用下面的代码来实现这一点

如何利用c++;来自javascript xpcom组件的xpcom组件 我用C++开发了XPCOM组件。我的组件中有GetHWND()方法。我还使用javascript开发了另一个xpcom组件。我想在javascript xpcom组件中使用GetHWND函数。我使用下面的代码来实现这一点,javascript,c++,xpcom,Javascript,C++,Xpcom,netscape.security.privilegmanager.enablePrivilege(“UniversalBrowserRead”) netscape.security.privilegmanager.enablePrivilege(“UniversalXPConnect”) var myComponent=Components.classes['@dougt/WebLock'].createInstance(Components.interfaces.IWebLock) myCo

netscape.security.privilegmanager.enablePrivilege(“UniversalBrowserRead”)

netscape.security.privilegmanager.enablePrivilege(“UniversalXPConnect”)

var myComponent=Components.classes['@dougt/WebLock'].createInstance(Components.interfaces.IWebLock)

myComponent=myComponent.QueryInterface(Components.interfaces.IWebLock)

var res=myComponent.GetHWND(mainWindow.content.document)

但它给出的错误是“ReferenceError:netscape未定义”。我做了谷歌搜索,但没有找到解决办法

我正在使用Mozilla Firefox,我希望它也能得到同样的效果

请帮我解决这个问题。 提前感谢。

您不需要这些:

netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");

我同意Nickolay的观点,当您的扩展代码被执行时,它拥有chrome特权,允许您访问XPCOM层和组件

我想看到的是,它是否能与尼古拉提到的那些行一起工作。 第二项>如何定义C++组件的接口。
XPIDL不知道HWND类型,所以必须提供一些不同的类型,或者可以使用本机类型,但它不被[脚本]接口支持,我将向问题添加C++和JavaScript标签,以试图让更多的人寻找解决方案。