2010-11-18 164 views
9

作为一个简单的例子,我有一个C函数接收一个int,增加它并返回递增的值。在另一端我输入数字输入到C#中的文本框。 我该如何调用C函数来处理数字并将它从c#返回?在此先感谢从C#调用c函数#

回答

12

您正在寻找P/Invoke

你确实需要一个参考System.Runtime.InteropServices,然后进行以下操作,如果你的C DLL包含一个名为increase_int功能:

[DllImport("mylib.dll")] 
private static extern int increase_int(int in_value); 

,并从你的代码做

int newValue = increase_int(oldValue); 
+0

完美的使用它。 ..嘿哟.. – 2010-11-18 15:12:18

+0

嗨,我无法调试程序,为什么控制不会进入被称为功能时,超过(F11)...? – 2010-11-20 03:15:58

+0

您无法使用.Net的标准调试机制调试C dll。 – Residuum 2010-11-20 14:14:02