【问题标题】:How to get root directory of the device from WPD API?如何从 WPD API 获取设备的根目录?
【发布时间】:2017-08-21 11:35:05
【问题描述】:

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

【问题讨论】:

    标签: windows winapi usb mtp wpd


    【解决方案1】:

    我相信您应该阅读 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 的对象是文件夹。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-19
      相关资源
      最近更新 更多