在 Javascript (WinJS) 中绑定 C++/CLI 委托
Bind on C++/CLI delegate in Javascript (WinJS)
我正在为所有主要的操作系统(iOS,macOS,Android和Windows)构建一个Cordova应用程序。
我在 C++/CLI 中编写了一个本机插件 (WinRT) 来调用一些本机函数,该插件使用委托异步返回结果。
我还用 C# 编写了一个测试应用程序,它允许我轻松测试 C++/CLI 代码,而无需编译整个 Cordova 项目。 我能够在 C# 中毫无问题地绑定到 C++/CLI 委托,但在 Javascript 中我无法这样做。
C# 方式(像魅力一样工作):
myCppClass.log += (string logString) =>
{
Debug.WriteLine(logString);
};
Javascript Way(根本不起作用):
myCppClass.addEventListener("log", function (msg) {
console.log(msg);
});
我从以下方面获得了Javascript的方式: https://msdn.microsoft.com/en-us/library/hh779077.aspx
有谁知道如何在 JavaScript 中绑定到 C++/CLI 委托?
谢谢
再次查看 https://msdn.microsoft.com/en-us/library/hh779077.aspx#Anchor_4 示例。
你试过这种方式吗?
var instance = new MyCppClass();
instance.addEventListener("log", function (e) {
console.log(e.msg);
});
相关文章:
- 在 C++/CLI 中将 .NET 事件从一个 DLL 引发到另一个 DLL
- C++/CLI System.AccessViolation在托管类中调用非托管函数时出现异常
- 是否可以在Linux上使用.Net Core 3.1创建C++/CLI代码的C#DLL
- C++ DLL(不是 CLI)是否可以调用 .NET Core 3.0 委托?
- VS2010 C++ 调试托管 (C++/CLI) DLL
- 如何将 C++/CLI 库链接到C++应用程序
- C++/CLI targetting .NET Core 3.1
- 模板函数签名在 C++/CLI 中解包
- C++/CLI 混合托管/本机 DLL 不起作用
- C++/CLI 和 C#/VB 与不安全和外部有什么区别?
- 是否有可能构建面向Linux和Windows的.Net Core C++ / CLI应用程序?
- DirectX 12 和 C++ CLI :无法使用IID_PPV_ARGS
- 如何为要在 C# 中使用的静态库创建 C++ 或 C++/CLI 包装器
- 将 C# 对象(包含静态对象成员)作为参数传递给 C++/CLI 程序
- C++/CLI -- 访问结构成员
- 如何将字符串从 C++/CLI 方法返回到调用它的非托管C++
- 如何将CLI类的函数指针作为参数传递给C++方法
- 用于LabView中使用的本机c++的c++/cli dll包装器
- C#WPF和C++/CLI以及C++在C++/CLI中添加外部库错误
- 在.NET Core 3.1中运行托管C++/CLI程序集时,映像格式错误