c ++ - Hvad er den indfødte måde at kommunikere med et standard USB PTP/MTP kamera på Windows?

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg ser på WinUsb, og jeg har en følelse af det. Det er ikke, hvad jeg har brug for. Kan du venligst pege på mig i den rigtige retning?


Jeg skal bare registrere enheden og sende/modtage rå data. Jeg plejede at bruge libusb, men nogle af dens karakteristika tvinger mig til at skifte til en indbygget API. Det eneste problem er, at jeg ikke kender det.

Bedste reference


Det lyder som om du leder efter WPD (Windows Portable Devices). Denne API er inkluderet i Windows SDK og understøtter MTP-kommunikation med en række forskellige enheder. WPD-teamet har en meget nyttig blog, som indeholder instruktioner om hvordan man kommer i gang med udvikling. [1] [2] [3]


Redigere:


Hvis du vil have rå USB-adgang, har WPD et driverpakke til rådighed: [4]



   Driver Kit for Windows Portable Devices

  WPD Driver Kit indeholder a
  Device Driver Interface (DDI), der understøttes i Windows 7, Windows
  Vista og Windows XP operativsystemer. Udviklere vil bruge denne DDI
  at skrive drivere til enheder, der ikke allerede understøttes af MTP
  eller masselagerklassedrivere, som Microsoft distribuerer.


Andre referencer 1


Jeg har fået nogle svar her:
https://sourceforge.net/mailarchive/forum.php?thread\_name=HKEDKEEGPPEOHLHHEPEDKEOADBAA.michael.plante\%40gmail.comu0026amp;forum\_name=libusb-win32-devel[5]


I et par ord - WPD til Windows Vista/7 og ReadFile/WriteFile til XP.