据我所知,由于语言的性质(IL,JIT编译器),无法直接用C#编写的DLL导出可以从用C或C ++等语言编写的本机应用程序加载的C-Style函数。 。关于实现这种目标的唯一信息可能涉及COM或某些C ++ / CLI粘合代码。
但是,正式的Microsoft文档对.NetNative的说明如下:
NET Native使用与C ++编译器相同的后端,后者针对静态预编译方案进行了优化。
这是否意味着可以使用.Netnative编写本地DLL?如果是的话,怎么办?
答案 0 :(得分:2)
这是否意味着可以使用.Netnative编写本地DLL?
不。 COM Interop和C ++ / CLI解决的问题是无法用C#表示与C / C ++兼容的函数导出。它们都允许您这样做,并将数据从.NET类型封送为C / C ++类型。
.NET Native会编译整个应用程序,而不是单个库。