C#调用C++的DLL文件
例如在一个DLL文件名字为:PlusEclipse,中其导出函数的原型为void SetHook(),那么其调用过程为:
首先将这个DLL文件放置到你C#程序所在的当前目录下。
其次将C#项目【生成】的【目标平台】修改为x86,而不是Any CPU。如果缺少这一步的话会提示错误:试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)。
最后其调用的格式为
[DllImport("PlusEclipse.dll",EntryPoint="方法名")]
public static extern 【Dll方法返回类型】 【方法名】(【需要的参数】);
例如:
public partial class Form1 : Form { [DllImport("PlusEclipse.dll",EntryPoint="SetHook")] public static extern void SetHook(); public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { SetHook(); } }
注意【DllImport】一定要放在类中,因为C#中最小的单位是类