C#怎么引用非托管的dll

2025-04-12 23:24:03
推荐回答(2个)
回答(1):

哎,本来一个很简单的问题总是被人弄得这么复杂。
C#里调用非托管的Dll要使用P/Invoke平台调用技术,简单的说就是使用前先声明。例如在Kernel32动态链接库中有个函数叫WritePrivateProfileString,那么,使用它之前就必须这样
[DllImport("Kernel32")]
Private static extern long WritePrivateProfileString(string section,string key,string val,string filePath);

上面叫原型声明,然后就可以按普通函数的方法使用上面的函数了。

LoadLibrary等这些函数不是.net的,是VB6 VC6的用法,你是学C#的,那些对你没用。

回答(2):

是不对,要在classku.dll里定义入口点。建议lz把那本《精通.net互操作》看看