【发布时间】:2011-10-30 02:19:01
【问题描述】:
我在 C++ 库中定义了一个 C++/CLI 接口(使用 /clr 开关编译) 我还有一个 C# 库。
我的 C# 库定义: - 一个实现PrismIModule 接口的类。 - 一个实现了 C++/CLI 接口并用MEF Export 属性修饰的类。
C# 和 C++\CLI 库都部署到同一个文件夹中。
我从 Prism 收到 ModuleLoadException,说它找不到我的 C++/CLI 程序集或其依赖项之一。
如果我用 .NET 替换 C++/CLI 程序集,一切正常!
那么我的问题是,是否有可能导出一个实现 C++\CLI 接口的类,而导出类型是该接口?
为什么我在 C++/CLI 库中定义了接口?我希望我们拥有的旧版 C++ DLL 实际上可以在 C++\CLI 库中定义它们的合约,并让 C# 库引用该合约 dll。 也许我的方法是错误的,如果您认为有更好的方法来实现这一点,请告诉我。
【问题讨论】: