问题描述
- C# 调用setupapi.dll里的方法出错
-
写的程序中调用了,如下代码
[DllImport("setupapi.dll", SetLastError = true)]
public static extern bool SetupDiEnumDeviceInfo(IntPtr lpInfoSet, UInt32 dwIndex, SP_DEVINFO_DATA devInfoData);
可是不知为什么,这段代码在我的笔记本上测试有问题,产生不了正常结果。我的笔记本是WIN7系统,但是到了XP系统上却运行的很正确。后来又到其它win7电脑上运行,依旧不正确,请问这是为什么?怎么把它改成通用的 ?或者改成win7可用也行。
解决方案
一个是UAC权限问题,要以管理员身份运行程序,一个是32bit/64bit的问题,驱动程序必须严格匹配版本,64bit没法装32bit驱动
解决方案二:
uac权限要注意,程序权限够吗
再看调用失败返回值
时间: 2024-08-26 03:35:15