mir*_*ham 8 c# c++ windows-runtime
我有带有UI组件的通用Windows C#类库.我想知道我是否可以使用Native C++.
我试图使用regasm将类库dll转换为tlb文件,但它会抛出错误
错误:程序集不能是Windows运行时程序集.
我还尝试为C#类库创建一个WinRT/WRL包装器,并尝试从Native C++加载它.但是当我调用LoadLibrarywrapper dll时,它会返回'nullptr'并返回126错误,即使所有dll和可执行文件都在同一目录中.
那么如何使用Native C++的通用Windows类库呢?可能吗?
您必须将类库公开为 COM 组件并从本机代码调用它,这是最方便的解决方案。您将无法从本机 C++ 调用通用 Windows C# 类库,因为它不会被识别,并且正如您在问题中提到的,它将导致异常nullptr。
有趣的是,你可以反过来做!
您可以创建一个本机 C++ 库并在通用 Windows C# 平台中调用它 - MSDN 中有关于此实践的整篇文章:
在通用 Windows 平台应用程序中使用现有的 C++ 代码
在我看来,有趣的是,你可以做一件事,但不能做相反的事情,但仍然很高兴知道至少有一种方法实际上是可能的。
| 归档时间: |
|
| 查看次数: |
266 次 |
| 最近记录: |