阅读:2358回复:3
令人头疼的GUID
每个设备都对应有一个GUID,
现在注册表中根据设备的vid和pid找到了该设备,但是其GUID是: ClassGUID的值{36FC9E60-C465-11CF-8056-444553540000}, 还是SymbolicName的值“\??\USB#Vid_05e3&Pid_0702#5&32d15fa7&0&1#{a5dcbf10-6530-11d2-901f-00c04fb951ed}”中的哪一部分呢? 另:在具体调用函数: SetupDiGetClassDevs(pGuid, NULL, NULL, DIGCF_ALLCLASSES | DIGCF_PRESENT | DIGCF_INTERFACEDEVICE)时, pGuid 应该写成什么样的格式呢? |
|
沙发#
发布于:2004-07-17 21:47
GUID当然是ClassGUID的值{36FC9E60-C465-11CF-8056-444553540000},
pGuid 应该定义成GUID格式的常量 |
|
|
板凳#
发布于:2004-07-17 22:12
可是这样调用不行啊:
GUID pGuid= {36FC9E60-C465-11CF-8056-444553540000}; SetupDiGetClassDevs(pGuid, NULL, NULL, DIGCF_PRESENT | DIGCF_INTERFACEDEVICE) 报错如下: c:\documents and settings\tijic\desktop\usbrw\usbrw.cpp(159) : error C2059: syntax error : 'bad suffix on number' c:\documents and settings\tijic\desktop\usbrw\usbrw.cpp(159) : error C2061: syntax error : identifier 'FC9E60' c:\documents and settings\tijic\desktop\usbrw\usbrw.cpp(159) : error C2059: syntax error : 'bad suffix on number' |
|
地板#
发布于:2004-07-18 09:25
都不对,所有的usb类设备都是{a5dcbf10-6530-11d2-901f-00c04fb951ed},用vid作关键字在注册表里仔细搜搜,把相关像guid的都找出来,肯定有一个是对的但不应该是classguid的键
应该是在像名称里,类似这样HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\DeviceClasses\{6bdd1fc6-810f-11d0-bec7-08002be2092f}\##?#USB#Vid_0461&Pid_0347#5&c4240ca&0&1#{6bdd1fc6-810f-11d0-bec7-08002be2092f} [编辑 - 7/18/04 by netscan] |
|