Befehle (WPD-API)

Die Clientanwendung und der Treiber kommunizieren über Befehle, die vom Client (über die Windows Portable Device API) an den Treiber gesendet werden (über das User-Mode Driver Framework). Ein Befehl kann einen Parameter enthalten oder nicht und kann ein Ergebnis zurückgeben oder nicht. Ein Client kann einen Befehl explizit senden, indem entweder die IPortableDevice::SendCommand-Methode oder die IPortableDeviceService:SendCommand-Methode oder implizit eine der Methoden der Clientschnittstellen aufgerufen wird. Einige Befehle können nur explizit gesendet werden. diese sind in der Dokumentation des Befehls notiert. Auf den Befehlsreferenzseiten wird der Zweck eines Befehls beschrieben, und es wird beschrieben, welche Parameter er empfängt und welche Parameter er zurückgeben soll.

Ein Befehl wird durch eine PROPERTYKEY-Struktur identifiziert. Dies besteht aus zwei Teilen: einem GUID-Teil (dem fmtid-Element ) und einem DWORD-Teil (dem pid-Element ). Der GUID-Teil wird verwendet, um die Kategorie anzugeben, zu der der Befehl gehört (verwandte Befehle gehören zur gleichen Kategorie und haben daher den gleichen fmtid). Der DWORD-Teil gibt die Befehls-ID an und wird verwendet, um die einzelnen Befehle innerhalb einer Befehlskategorie zu unterscheiden (die pid-Werte für Befehle in derselben Kategorie unterscheiden sich).

In der folgenden Tabelle sind die Kategorien von Befehlen aufgeführt, die von Windows Portable Devices definiert werden. Gerätehersteller können ihre eigenen Befehle definieren, indem sie eigene Befehlskategorien und Befehls-IDs erstellen. Ein Hersteller sollte jedoch keine Befehle zu den unten aufgeführten Kategorien hinzufügen, da diese von Microsoft reserviert sind.

Befehlskategorien

Befehlskategorie BESCHREIBUNG
WPD_CATEGORY_COMMON Befehle, die für alle Objekte und Geräte gemeinsam sind.
WPD_CATEGORY_DEVICE_HINTS Befehle, die verwendet werden, um optionale Geräteinformationen abzurufen, die zur Verbesserung der Benutzerfreundlichkeit verwendet werden können.
WPD_CATEGORY_SMS Befehle, die für Geräte verwendet werden, die SMS-Funktionen (Short Message Service) unterstützen, die in der Regel auf Mobiltelefonen verfügbar gemacht werden.
WPD_CATEGORY_STILL_IMAGE_CAPTURE Befehle, die für Geräte verwendet werden, die die Standbilderfassung unterstützen.
WPD_CATEGORY_STORAGE Befehle, die für Speicherfunktionsobjekte verwendet werden.

 

Die spezifischen Befehle, die für jeden dieser Typen definiert sind, sind in den folgenden Tabellen angegeben, die nach Befehlstyp organisiert sind.

WPD_CATEGORY_COMMON Kategorie

Get-Help BESCHREIBUNG
WPD_COMMAND_COMMON_RESET_DEVICE Setzt das Gerät zurück.

 

WPD_CATEGORY_DEVICE_HINTS Kategorie

Get-Help BESCHREIBUNG
WPD_COMMAND_DEVICE_HINTS_GET_CONTENT_LOCATION Ruft die Objekt-IDs von Ordnern ab, die ein Objekt eines angegebenen Typs enthalten können.

 

WPD_CATEGORY_STORAGE Kategorie

Get-Help BESCHREIBUNG
WPD_COMMAND_STORAGE_EJECT Wirft ein Speichermedium aus, das vom Treiber remote ausgeworfen werden kann.
WPD_COMMAND_STORAGE_FORMAT Formatiert ein Speicherfunktionsobjekt auf dem Gerät.

 

WPD_CATEGORY_SMS Kategorie

Get-Help BESCHREIBUNG
WPD_COMMAND_SMS_SEND Initiiert das Senden einer SMS-Nachricht durch ein SMS-Funktionsobjekt.

 

WPD_CATEGORY_STILL_IMAGE_CAPTURE Kategorie

Get-Help BESCHREIBUNG
WPD_COMMAND_STILL_IMAGE_CAPTURE_INITIATE Initiiert eine Standbilderfassung durch ein funktionsbezogenes Objekt des Standbilds.

 

Programmierverzeichnis