链接到vcruntime140.dll而不是vcruntime140_app.dll

问题描述 投票:0回答:1

我找到了一种方法,通过绕过默认的激活工厂分辨率,在桌面上(没有app容器)利用cpp winrt进行C#/ C ++互操作。

我这样做的方法是将本机C ++函数作为工厂公开,返回我在P#中调用的IUnknown指针,然后调用Marshal.GetUniqueObjectForIUnknown(ptr)来获取我可以强制转换为WinRT接口的RCW。

我现在的问题是,我的C ++库链接到vcruntime140_app.dll而不是vcruntime140.dll,这使得它实际上不可再分发。有没有办法使cppwinrt lib链接到桌面C运行时? (我使用visual studio 2019预览模板)

c++-winrt
1个回答
0
投票

我发现将AppContainerApplication属性设置为false似乎有效。

我肯定会在github上解释我的解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.