Javascript 如何在node-win32ole中接收COM事件
我有一个小的ATLCOM对象,它实现了一个方法(Method1),并在调用该方法时触发一个事件(Event1) 我可以在nodejs脚本中创建这个COM并调用它的方法。但我无法接收它的事件 此代码工作正常:Javascript 如何在node-win32ole中接收COM事件,javascript,node.js,com,atl,Javascript,Node.js,Com,Atl,我有一个小的ATLCOM对象,它实现了一个方法(Method1),并在调用该方法时触发一个事件(Event1) 我可以在nodejs脚本中创建这个COM并调用它的方法。但我无法接收它的事件 此代码工作正常: var win32ole = require('win32ole'); var api = new ActiveXObject("MySampleATLClass.Api"); api.Method1(); 但此代码会产生错误: var win32ole = require('win3
var win32ole = require('win32ole');
var api = new ActiveXObject("MySampleATLClass.Api");
api.Method1();
但此代码会产生错误:
var win32ole = require('win32ole');
var api = new ActiveXObject("MySampleATLClass.Api");
api.Event1 = function(bstr, obj){
console.log(bstr);
};
api.Method1();
错误详细信息:
在00000000模块中断言..\src\v8variant.cc(96)
@node_win32ole::V8Variant::Cre ateOCVariant:!v->IsFunction()
TypeError:node_win32ole::V8Variant::OLESet第二个参数不是
有效(nu OCLL变量)
反对。(C:\NodeJs\1.js:5:12)
在模块处编译(Module.js:456:26)
在Object.Module.\u extensions..js(Module.js:474:10)
在Module.load(Module.js:356:32)
在Function.Module.\u加载(Module.js:312:12)
位于Function.Module.runMain(Module.js:497:10)
启动时(node.js:119:16)
在node.js:906:3