如何从C++ DLL动态加载C#dll

Alw*_*ing 7 c# c++ interop virtual-functions dynamic-loading

我有一个C++应用程序.这支持用户的C++插件DLL的,它将动态加载这些DLL的,然后能够动态地创建和使用用户的类型.这些用户类型派生自主应用程序核心库中定义的基本类型和接口,因此我将用户的对象作为指向基类的指针,并调用用户的虚函数以使其发生魔力.

现在我想扩展插件DLL以允许托管DLL(我主要关心C#).我想在C#插件DLL中发生所有相同的魔术.

如何动态加载这些dll的,一些如何我想我目前使用Win32的调用LoadLibrary将会很乐意与托管DLL.我无法在编译/链接时访问这些库,它们来自用户.

在我加载了库之后,不幸的是我怀疑COM在我将来作为调用派生函数的方式.可能我可以使用我一直在阅读的CLI/C++包装器,但我在这里非常缺乏经验,并希望得到任何建议或相关文章的链接.

Pad*_*oti 2

另一种方法是创建一个托管 C# 类的 C++/CLI 项目,并将其用作 C++ 项目中的桥梁。

此方法的更多链接:

最新的链接有桥的简单源代码