我正在使用 Windows Portable Device API 来访问一些 MTP 设备。我想从设备中读取供应商扩展属性,它应该是这样的:
“microsoft.com/WPDNA”或“microsoft.com/MTPZ”
看起来这应该是一个非常简单的任务,但我无法弄清楚。
我已经能够枚举设备上的对象并传输文件等,这包含在WpdApiSample Application中。
我还发现了这篇我认为是我想做的文章。但我不明白如何创建这些查询。
我正在使用 Windows Portable Device API 来访问一些 MTP 设备。我想从设备中读取供应商扩展属性,它应该是这样的:
“microsoft.com/WPDNA”或“microsoft.com/MTPZ”
看起来这应该是一个非常简单的任务,但我无法弄清楚。
我已经能够枚举设备上的对象并传输文件等,这包含在WpdApiSample Application中。
我还发现了这篇我认为是我想做的文章。但我不明白如何创建这些查询。
在不进入代码的情况下,简短的回答是扫描给定 FormatID 的一系列 PID,以查看其中包含哪些类型的数据。这是一个调试练习,仅用于发现目的。我基本上只是写了一个循环:例如,如果我想在基本扩展属性下扫描前 16 个 PID,您将使用WPD_PROPERTIES_MTP_VENDOR_EXTENDED_DEVICE_PROPS
as FormatID,然后为 PID 在每次迭代时更改它并0xD101
通过0xD10F
. 您通常可以从输出中得知该 PID 位置中可能包含的内容。
一旦知道所需数据的 PID,就可以将其作为枚举例程的一部分写入代码。