6

我正在开发一个在 Windows 上运行的 PC c++ 应用程序。应用程序应使用 MTP 与通过 USB 连接的安卓手机进行通信。想法是不安装存储卡。我发现 Windows 有一些他们称之为 WPD(Windows Portable Device)的东西,它支持 MTP。它看起来不错,但需要安装 WMP11。我想知道的是:

  • 您可以使用其他替代库吗?
  • 有人对使用 WPD 有任何提示或经验吗?
  • 是否可以安装任何“更精简”的依赖项而不是 xp 的 WMP11?

任何帮助将不胜感激。

4

1 回答 1

6

我在这里为我的问题提供一些答案,希望它可以帮助其他人。

有没有替代品/更精简的图书馆?

  • 您可以使用 WIA,但这仅用于图像。但其中的一部分我还没有找到。

有小费吗?

  • 查看Microsoft提供的示例代码,这是一个很好的起点。我发现它正在MSDN 上搜索Portable Devices COM API Sample
  • 对于服务,您可以查看此示例代码。我通过谷歌搜索WpdServicesApiSample找到的
  • WPD api 很好用。
  • 并非所有设备都支持 MTP,有些设备只支持其中的一部分。这给我带来了一些问题,但我们使用的设备发布了支持更多 MTP 的更新
  • 我从 pcbbc 的StackOverflow中找到了有关 XP 问题的答案真的很有帮助。我还可以补充一点,我们向供应商邮寄并要求提供自定义 .INF 文件以支持 XP,他们真的很有帮助并为我们提供了它。但是我们花了一些时间才得到它。
于 2012-01-17T14:14:46.193 回答