HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\在以上键值下,有以数字命名的子键,子键下有网卡信息,如图所示。
图中框中的部分是对应网卡的GUID值吗?我遍历了所有的设备,可是没有找到与这个GUID相同的设备,对该GUID是否为对应网卡的GUID表示疑问。我是用的UuidFromString将注册表中这个字符串转换为UUID,然后用SetupDiEnumDeviceInfo进行遍历。用if (spDevInfoData.ClassGuid == guid)判断是否找到相同GUID。具体代码如下if (::UuidFromString(szData2,&guid) != RPC_S_OK) {
::MessageBox(NULL,"UuidFromString失败","",NULL);
}
hDevInfo = ::SetupDiGetClassDevs(&guid,NULL,NULL,DIGCF_PRESENT|DIGCF_ALLCLASSES );
if(hDevInfo==INVALID_HANDLE_VALUE)
{
::MessageBox(NULL,"SetupDiGetClassDevsEx失败","",NULL);}
int i = 0 ;
spDevInfoData.cbSize=sizeof(SP_DEVINFO_DATA);
for(i=0;SetupDiEnumDeviceInfo(hDevInfo,i,&spDevInfoData);i++){
if (spDevInfoData.ClassGuid == guid)
::MessageBox(NULL,"找到相同的GUID","",NULL);}希望高手能解答小妹的疑问,谢谢。
图中框中的部分是对应网卡的GUID值吗?我遍历了所有的设备,可是没有找到与这个GUID相同的设备,对该GUID是否为对应网卡的GUID表示疑问。我是用的UuidFromString将注册表中这个字符串转换为UUID,然后用SetupDiEnumDeviceInfo进行遍历。用if (spDevInfoData.ClassGuid == guid)判断是否找到相同GUID。具体代码如下if (::UuidFromString(szData2,&guid) != RPC_S_OK) {
::MessageBox(NULL,"UuidFromString失败","",NULL);
}
hDevInfo = ::SetupDiGetClassDevs(&guid,NULL,NULL,DIGCF_PRESENT|DIGCF_ALLCLASSES );
if(hDevInfo==INVALID_HANDLE_VALUE)
{
::MessageBox(NULL,"SetupDiGetClassDevsEx失败","",NULL);}
int i = 0 ;
spDevInfoData.cbSize=sizeof(SP_DEVINFO_DATA);
for(i=0;SetupDiEnumDeviceInfo(hDevInfo,i,&spDevInfoData);i++){
if (spDevInfoData.ClassGuid == guid)
::MessageBox(NULL,"找到相同的GUID","",NULL);}希望高手能解答小妹的疑问,谢谢。
解决方案 »
- 这样编译为何无法通过 ( 函数 Return )
- 求教关于网页游戏多开的原理
- 引用调用规则
- 求救,想在VC里调用dos命令xcopy实现文件夹拷贝怎样实现?
- 超难的问题呢!!在网页中加入VC做的activex,显示图片,并且可以操作,怎么都是基于视图不是对话框呢? 帮帮我吧,
- 我如果在资源文件中定义了比如是一个字符串,如果在程序中读出?
- 12月的那个大学大专招聘会找到工作的可能性高不高?谁去过,说来听听!
- 在win200下,如何通過編程使機器直接reset?
- 'm_astrFavoriteURLs' : undeclared identifier left of '.InsertAt' must have cl
- 如何实现两个View里面相同大小的两个Rect的显示内容的拷贝
- 不同分辨率下界面设计
- 线程出错,发生了错误 怎么才能检测出来线程已经报错
http://www.hellocpp.net/Articles/Article/233.aspx
SPDRP_CLASSGUID
该函数检索一个REG_SZ字符串,其中包含的GUID代表一个设备的设备安装程序类。