ActiveX 调用 Javascript 函数
ActiveX calling Javascript functions
我正在尝试从我的ActiveX(ATL C++(dll调用Javascript。 从我所做的研究中,你应该连接点。
已添加到我的 idl 文件
[
uuid(BDBFA5F9-B2CB-43b1-A414-CB6E3B15C6C2),
("Event interface for Test")
]
_ITestEvents
{
properties:
methods:
[id(1), helpstring("method Cancel")] void Cancel([in] char* x, [in] char* y);
};
已添加到我的类 .h 文件
class ATL_NO_VTABLE CTest :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<CTest, &CLSID_Test>,
public IConnectionPointContainerImpl<CTest>,
public CProxy_ITestEvents<CTest>,
public IObjectWithSiteImpl<CTest>,
public IObjectSafetyImpl<CTest,INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA>,
public IProvideClassInfo2Impl<&CLSID_Test, &__uuidof(_ITestEvents), &LIBID_Test3Lib>,
public IDispatchImpl<ITest, &IID_ITest, &LIBID_Test3Lib, /*wMajor =*/ 1, /*wMinor =*/ 0>
{
public:
BEGIN_COM_MAP(Clnaxprt)
COM_INTERFACE_ENTRY_IMPL(IConnectionPointContainer)
COM_INTERFACE_ENTRY(Ilnaxprt)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY(IConnectionPointContainer)
COM_INTERFACE_ENTRY(IObjectWithSite)
COM_INTERFACE_ENTRY(IObjectSafety)
COM_INTERFACE_ENTRY(IProvideClassInfo)
COM_INTERFACE_ENTRY(IProvideClassInfo2)
END_COM_MAP()
BEGIN_CONNECTION_POINT_MAP(Clnaxprt)
CONNECTION_POINT_ENTRY(__uuidof(_ITestEvents))
END_CONNECTION_POINT_MAP()
在Visual Studio中"实现了一个新的连接点",该连接点在_ITestEvents_CP.h中生成代码,该代码是使用方法名称Fire_Cancel(char * x,char * y(创建的。这就是我被困住的地方。我尝试调用Fire_Cancel,在调试生成的代码时,没有连接,因此没有从 IDispatch 调用。如何创建连接?
仍然不确定javascript是如何工作的,但希望在我转向之前理解这部分。谢谢
在我的情况下,HTML和Javascript是错误的。如果使用符号"id::function_name",请确保它在对象标签之后。如果符号是"for=id event=cancel",那么它可以位于之前/之后
相关文章:
- Javascript 找不到使用 emscripten 编译的导出 WASM 函数
- JavaScript 中的一等函数和 C++ 中的函数声明
- JavaScript箭头函数:我们能否像C ++ lambdas一样捕获值
- 我可以使用谷歌 v8 在回调函数中获取 JavaScript 函数C++源文本吗?
- 如何在 C++ 中从 V8 调用 Javascript 函数
- 用输出参数包装一个c++函数,以便在javascript/node中使用
- 如何在 v8 Javascript 中的多个函数中使用相同的上下文?
- 从C++代码抛出错误调用 JavaScript 回调函数 - nbind
- node.js Nan:在函数C++调用 JavaScript 回调
- 如何使用 cocos creator 在 Cocos2d-X/Cocos2d-JS 中调用 javascript 函数并
- 如何使用 JavaScriptCore 将C++对象传递给 JavaScript 函数
- v8.从 C++ 保存和调用 JavaScript 函数
- 如何通过 MS Chakracore JavaScript 引擎调用C++函数或方法
- Javascript 函数作为从 c++ 定义的 QML 属性
- 在Linux上,用BASH脚本或C 脚本替换JavaScript函数
- 在WindBG断点命令中调用JavaScript函数
- C ++ tiny-js 从外部文件执行 JavaScript 函数
- 在 V8 中创建自定义 JavaScript 函数
- 将JavaScript数组作为参数传递给WebAssembly函数
- 在V8中从C++回调调用Javascript函数