读书人

C# 64位win7停DllImport LoadLibrary函

发布时间: 2013-04-21 21:18:07 作者: rapoo

C# 64位win7下DllImport LoadLibrary函数失败,求解。
C# 2.0 开发winform程序


[DllImport["kernel32.dll"]]
static extern IntPtr LoadLibrary(string lpFileName);


public void Fun()
{
IntPtr p = LoadLibrary(abc.dll);
}


在32位xp系统下正常,可在64位windows 7系统下,p值返回为0

abc.dll可在mfc程序里用loadlibrary正常调用。并不缺少任何其他相关dll。

求解。
[解决办法]
[DllImport["kernel32.dll"]]

确定没有 "kernel32.dll" -》kernel64

没用过w7。没法试。win2008出现过几回都是权限问题。用x86编译
[解决办法]
把你的winform程序编译成x86的目标平台
[解决办法]
Load一个其他dll试试看,如果其他的dll都可以,那说明还是你dll编译的问题。
如果不可以,试试关掉UAC,或者看看system32目录是否有kernel32.dll或确认其是否正常工作。

读书人网 >C#

热点推荐