C#中调用C语言写的dll
Sandeepin喜欢用C#做GUI,因为方便,随手画就能做好,但是写代码还是喜欢用C语言。可是学C语言时书上根本没教如何编写dll,经过自己查阅各种资料教程,终于成功啦,现分享自己的心得。IDE用的是Visual Studio 2010。
一、创建dll
1、建立一个 Win32控制台应用程序 。
2、选择类型为DLL。
3、编写如下代码。一个例子,函数sum计算a+b的和:
extern "C" { __declspec(dllexport) int sum(int a, int b) { return a + b; } }
4、编译就能得到dll啦。
二、C#中调用dll
1、为了方便演示,就简单建个控制台程序吧:
建好后记得把建立的dll放到现在这个工程的Debug目录下。
2、先引入命名空间using System.Runtime.InteropServices;。再在class Program中输入如下代码:
[DllImport("sandeepin.dll", EntryPoint = "sum", CallingConvention = CallingConvention.Cdecl)] private static extern int Sum(int a, int b); static void Main(string[] args) { Console.WriteLine(“2加3的和″); int result = Sum(2, 3); Console.WriteLine(“计算结果为: {0}”, result); Console.ReadKey(); }
3、编译后即可看到结果:
文章目录