阅读:1735回复:6
USB通信编程问题
我用系统的USB GUID(36FC9E60-C465-11CF-8056-444553540000),为什么使用SetupDiGetClassDevs这个函数时,我假如参数设置为DIGCF_INTERFACEDEVICE,就得不到我要的那个设备,但是用DIGCF_PROFILE就能查找到这个设备。
可以这样的话,又有一个新的问题了,用DIGCF_PROFILE这个参数的话,后面我就没法使用SetupDiEnumDeviceInterfaces和SetupDiGetInterfaceDeviceDetail来得到设备路径了,因为我最终要打开这个设备的。问题就是使用SetupDiEnumDeviceInterfaces函数时,总是返回FALSE。 |
|
沙发#
发布于:2008-01-16 14:19
每天满怀希望的一遍一遍刷新,满怀失望的再等待
|
|
板凳#
发布于:2008-01-17 08:48
呼唤专家啊
|
|
地板#
发布于:2008-01-17 09:45
不懂
|
|
地下室#
发布于:2008-01-18 10:33
用户被禁言,该主题自动屏蔽! |
|
5楼#
发布于:2008-01-18 18:29
看一下vckbase上有一个usbtest的程序,可能会对你有所帮助
|
|
6楼#
发布于:2008-01-21 13:03
对楼主提出的问题,也曾经为难了我很长时间。
你可以试试用通用的GUID: DEFINE_GUID(USBGuid, 0xA5DCBF10,0x6530,0x11D2,0x90,0x1F,0x00,0xC0,0x4F,0xB9,0x51,0xED); 我就是使用了这个USB通用GUID后,可以得到devicePath,并用CreateFile得到了Handle。 但是我现在使用该Hangle却不能进行读和写,使用GetlastError返回值为1,Incorrect function.。不知道为什么。在网上有人说需要在路径后添加管道名,也没有成功。 希望高手指教。 |
|