SetupDiGetSelectedDriver 使用问题

sea_sharka_17 2009-04-22 01:42:43

HDEVINFO hDevInfo ;
SP_DEVINFO_DATA spDevInfoData ;
SP_DRVINFO_DATA DriverInfoData;

//访问系统的硬件库
hDevInfo=SetupDiGetClassDevs(NULL,"PCI",NULL,DIGCF_ALLCLASSES|DIGCF_PRESENT);
if(hDevInfo==INVALID_HANDLE_VALUE)
{
printf("访问系统硬件出错!");
return false ;
}

//枚举硬件,获得需要的接口
spDevInfoData.cbSize=sizeof(SP_DEVINFO_DATA);
for(i=0;SetupDiEnumDeviceInfo(hDevInfo, i, &spDevInfoData);i++)
{
if(!SetupDiBuildDriverInfoList(hDevInfo,
&spDevInfoData, SPDIT_COMPATDRIVER))
{
DWORD err = GetLastError();
return false;
}

DriverInfoData.cbSize = sizeof(SP_DRVINFO_DATA);

if(!SetupDiGetSelectedDriver(hDevInfo, &spDevInfoData, &DriverInfoData))
{
if(ERROR_NO_DRIVER_SELECTED != GetLastError())
{
DWORD dw = GetLastError();
printf("%ld", dw);
return false;
}
else
{
continue;
}
}
else
{
printf("%s\n", DriverInfoData.Description);
continue;
}
}


请问,为什么我SetupDiGetSelectedDriver的操作没有任何信息呢?
我没有安装DDK,和这个有关系吗?因为,我只想做一些简单的操作
...全文
34 点赞 收藏 回复
写回复
回复

还没有回复,快来抢沙发~

发动态
发帖子
硬件/系统
创建于2007-09-28

2260

社区成员

1.7w+

社区内容

VC/MFC 硬件/系统
社区公告
暂无公告