0

我想从 WPD API 获取 MTP USB 设备的所有根目录(我可以将它们识别为 GUID)。所以我的问题是:我怎么能做到这一点?任何代码片段将不胜感激。

4

1 回答 1

0

我相信您应该阅读 Windows 便携式设备指南:https ://msdn.microsoft.com/en-us/library/windows/desktop/dd389005(v=vs.85).aspx ,只要此任务很常见且相似此处描述的任务: https ://msdn.microsoft.com/en-us/library/windows/desktop/dd319330(v=vs.85).aspx ,您可以尝试编译和调试示例解决方案: https: //code.msdn.microsoft.com/windowsdesktop/Portable-Devices-COM-API-fd4a5f7d

很快,您必须创建 IPortableDeviceContent 对象,然后使用 id WPD_DEVICE_OBJECT_ID 调用 EnumObjects 方法(它是当前设备的 ROOT 宏)。

您将以这种方式获取对象 id,然后您必须遍历它们并通过 id 请求每个对象的属性(在您的情况下为 WPD_OBJECT_CONTENT_TYPE)。

WPD_OBJECT_CONTENT_TYPE == WPD_CONTENT_TYPE_FOLDER 的对象是文件夹。

于 2017-08-30T14:06:33.283 回答