2011-10-27 14 views
6

Pracuję nad aplikacją PC C++ działającą w systemie Windows. Aplikacja będzie komunikować się z telefonem z Androidem podłączonym przez USB, używając MTP. Idée nie może zamontować karty pamięci. Odkryłem, że Windows ma coś, co nazywają WPD (Windows Portable Device), które obsługuje MTP. Wygląda całkiem nieźle, ale wymaga zainstalowania WMP11. Co się zastanawiam:Komunikacja Windows MTP/WPD z urządzeniem z systemem Android

  • Czy istnieją inne alternatywy bibliotek, których można użyć?
  • Czy ktoś ma jakieś wskazówki lub doświadczenia dotyczące korzystania z WPD?
  • Czy istnieją jakieś "szczuplejsze" zależności, które można zainstalować zamiast WMP11 dla PD?

Każda pomoc zostanie bardzo doceniona.

Odpowiedz

6

Tutaj udzielam odpowiedzi na moje pytanie z nadzieją, że pomoże to komuś innemu.

Czy istnieją alternatywy/biblioteki odchudzające?

  • Możesz użyć WIA, ale to jest używane tylko dla obrazów. ale część z tego nie znalazłem.

Jakieś wskazówki?

  • Zapoznaj się z sample code provided przez Microsoft, jest to dobry punkt startowy. Znalazłem, że szukają urządzeń przenośnych COM Sample API na MSDN
  • Dla usług można sprawdzić this sample code. Które znalazłem przez googling dla WpdServicesApiSample
  • Interfejs WPD jest całkiem w porządku.
  • Nie wszystkie urządzenia obsługują protokół MTP, a niektóre obsługują tylko jego część. Wywołało to pewien problem, ale urządzenie, z którego korzystaliśmy, wydało aktualizację, która obsługuje więcej MTP
  • Znalazłem odpowiedź na pytanie o problemy z XP od this StackOverflow przez pcbbc naprawdę pomocne. Mogę również dodać, że wysłaliśmy pocztą elektroniczną do dostawcy i poprosiliśmy o niestandardowy plik .INF do obsługi XP i byli bardzo pomocni i zapewnili nam go. Ale minęło trochę czasu, zanim go dostaliśmy.
Powiązane problemy