1

我需要从 C# DLL 创建一个 .lib 文件(我认为这是 C#,因为此代码调用了 dll https://code.google.com/p/thunder-missile-api/downloads/detail?name =MissileLauncher.cs&can=2&q= ) 换句话说,我需要为他们的软件附带的DreamCheeky Thunder Missile Launcher DLL 创建一个 .lib 。

现在,我需要做什么?我需要使用 C++ 操作这个设备。最简单的方法是使用他们自己的DLL。上面链接的代码在 C# 中完成。

我尝试将 DLL 文件导入项目 C++,但似乎缺少一些方法,特别moveMissileLauncher()是在 C# 代码中调用的方法。

最好的事情是,我可能想迁移到 QT(很可能),所以你知道,拥有一个 .lib 是个好主意。

4

2 回答 2

1

从托管 dll 中创建一个库不会有任何好处。您需要使用互操作 http://msdn.microsoft.com/en-us/library/ms973872.aspx

在您的特定情况下,我会编写一个 C++ lib,它公开您需要/想要调用的方法,并使用互操作将它们转发到托管 C# dll

我个人会在 C++/CLI 中这样做。关于您所拥有的选项的一篇好的、更新的文章在这里http://msdn.microsoft.com/en-us/magazine/dd315414.aspx,或者在 SO for COM/.NET interop 上查看,您会发现很多答案。

于 2013-05-10T07:40:44.397 回答
1

您想从您的 c++ 应用程序调用托管 C# 代码。是从您的 c++ 应用程序调用 c# 代码的教程,我以前使用过这种方法,对我来说效果很好。

于 2013-05-10T13:03:51.910 回答