我想弄清楚这是怎么回事:
因此,我认为问题出在哪里(我可能错了):
我该怎么做?谢谢你的建议。
发布于 2013-05-10 15:03:46
您必须在.NET程序集中以COM的形式公开某些内容。
发布于 2013-06-15 22:30:54
本机DLL可以是一个混合模式的本机程序集和.NET程序集,使用C++/CLI.在这里搜索“#务实管理的”/“非管理的#语用”,或者查看任何关于C++/CLI的书籍。基本上,假设您拥有VisualC++ 2010或2012年,您可以编写如下内容:
#pragma unmanaged
int main()
{
CallManagedTrampoline();
}
#pragma managed
void CallManagedTrampoline()
{
TypeFromDotnetDLL t = new TypeFromDotnetDLL();
t.CallSomething();
}事实上,根据.NET DLL中的细节,您甚至可能不需要将#杂注管理在CallManagedTrampoline()调用之前--有时您可以直接从非托管代码调用。C++/CLI是你的朋友。
https://stackoverflow.com/questions/16485265
复制相似问题