我使用WPD已经有一段时间了,我似乎遇到了一个又一个问题。
一旦我解决了一个问题,其他的东西就会弹出。但是这就是生活。
我一直在试着确定WPD设备是存储设备还是手机什么的。
事实证明,像iPhone这样的设备不会被设置为手机,而是被设置为WPD_DEVICE_TYPE的通用设备。
但是,它是作为一个存储设备提交给Windows的。
在连接外部硬盘驱动器、SD存储卡读卡器和其他更传统的存储设备时,WPD也会识别,但也可以在Windows中获得专用的挂载点。
如果我连接一个外部硬盘驱动器,它将有一个函数类别对象,并且该对象的值将是该驱动器的路径,E:说。
好的。太棒了!
,所以我的问题是:如果WPD设备有一个挂载点,我怎样才能读到?当然,functional表示它有一个,但是是否有可能有一个指示值,说明一个装入点是可用的?
发布于 2017-04-06 17:57:20
检查设备Ids,这里有一个例子说明它们之间的区别:
\?\swd#wpdbusenum#_??_usbstor#disk&ven_usb&prod_flash_disk&rev_1100#aa04012700007404&0#{53f56307-b6bf-11d0-94f2-00a0c91efb8b}#{6ac27878-a6fa-4155-ba85-f98f491d4f33
与
USBSTOR\DISK&VEN_USB&PROD_FLASH_DISK&REV_1100\AA04012700007404&0
上面的Id是从PortableDeviceManagerClass (创建PortableDevice对象的第一步)收集的Id,是我刚刚从设备管理器读取的较低的Id,但是使用以下解决方案之一可以很容易地检索到:
How do I get a Unique Identifier for a Device within Windows 10 Universal?
https://sourceforge.net/projects/sharpdevelop/files/SharpUSBLib/
https://stackoverflow.com/questions/29194124
复制相似问题