与Android设备的Windows MTP/WPD通信

giZ*_*Zm0 6 c++ windows usb wpd

我正在开发一个在Windows上运行的PC c ++应用程序.应用程序应使用MTP与通过USB连接的Android手机通信.该idée是不安装存储卡.我发现Windows有一些他们称之为支持MTP的WPD(Windows便携设备).它看起来还不错,但它要求安装WMP11.我想知道的是:

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

任何帮助将不胜感激.

giZ*_*Zm0 6

我在这里为我的问题提供了一些答案,希望它能帮助其他人.

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

  • 您可以使用WIA,但这仅用于图像.但是我没有找到任何一部分.

有小费吗?

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