C源代码为Dll

时间:2011-04-23 20:33:32

标签: c# c dll

我需要你的帮助,让我在这里解释一下情况: 我有用VC ++ 6.0编写的交流源代码,我需要在我编码的C#应用​​程序中使用该代码,我做了很多事情才能实现,我已经在发布模式下运行了C源文件并且有生成了intermediate.manifest文件和那里的其他文件,我可以使用这些文件中的任何一个来解决我的问题。否则请指导我应该尽快做什么?

Rahul Sharma

3 个答案:

答案 0 :(得分:3)

您要做的是导入dll ,如下所示:

 [DllImport("user32.dll")]//This is where you identify your dll...
   public static extern int MessageBoxA(  //This would be an object from your dll
      int h, string m, string c, int type);

   public static int Main() 
   {
      return MessageBoxA(0, "Hello World!", "My Message Box", 0);
   }

您需要搜索以了解此问题的关键字是“正在运行非托管代码”和“ PInvoke ”。

答案 1 :(得分:0)

另一种方法是将C代码包装在托管C ++中。 Microsoft称之为C ++ / CLI。无论如何,你然后从该包装器编译一个'程序集'。程序集只是一个包含托管代码的DLL。然后,您可以从完全托管的C#应用​​程序中“引用”(管理的等效链接)“包装”。 因此依赖关系可能如下所示:

C - >托管C ++ - > C#

答案 2 :(得分:0)

如果你足够舒服地用c ++包装c代码,你可以通过this微软指南轻松制作一个dll。它详细介绍了如何在C ++中创建一个dll。如果您需要更深入的解释,请随时回复我,我会尝试快速解决问题。

如果您使用不同的IDE或环境,请告诉我,我可以更准确地说明您的需求。

可能会在今天晚些时候,但是现在我很紧张。