Befehle (WPD-API)
Die Clientanwendung und der Treiber kommunizieren mithilfe von Befehlen, die vom Client (über die Windows Portable Device API) an den Treiber (über das User-Mode Driver Framework) gesendet werden. Ein Befehl kann einen Parameter enthalten oder nicht enthalten und kann ein Ergebnis zurückgeben oder nicht. Ein Client kann einen Befehl explizit senden, indem er entweder die IPortableDevice::SendCommand-Methode oder die IPortableDeviceService:SendCommand-Methode aufruft oder implizit eine der Methoden der Clientschnittstellen aufruft. Einige Befehle können nur explizit gesendet werden. diese werden in der Dokumentation des Befehls aufgeführt. Auf den Befehlsverweisseiten wird der Zweck eines Befehls sowie die parameter beschrieben, die empfangen werden sollen, und welche Parameter zurückgegeben werden sollen.
Ein Befehl wird durch eine PROPERTYKEY- Struktur identifiziert. Dies besteht aus zwei Teilen: einem GUID-Teil (dem fmtid Member) und einem DWORD-Teil (dem pid Member). Der GUID-Teil wird verwendet, um die Kategorie anzugeben, zu der der Befehl gehört (verwandte Befehle gehören zu derselben Kategorie, und daher wird das gleiche fmtid). Der DWORD-Teil gibt die Befehls-ID an und wird verwendet, um die einzelnen Befehle in einer Befehlskategorie zu unterscheiden (die pid- Werte für Befehle in derselben Kategorie sind unterschiedlich).
In der folgenden Tabelle sind die Kategorien von Befehlen aufgeführt, die von Windows Portable Devices definiert werden. Gerätehersteller können eigene 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 gelten. |
WPD_CATEGORY_DEVICE_HINTS | Befehle, die zum Abrufen optionaler Geräteinformationen verwendet werden, die zur Verbesserung der Endbenutzerfreundlichkeit 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 Bildaufnahme unterstützen. |
WPD_CATEGORY_STORAGE | Befehle, die für Speicherfunktionsobjekte verwendet werden. |
Die spezifischen Befehle, die für jeden dieser Typen definiert sind, werden in den folgenden Tabellen nach Befehlstyp organisiert.
WPD_CATEGORY_COMMON Kategorie-
Befehl | Beschreibung |
---|---|
WPD_COMMAND_COMMON_RESET_DEVICE | Setzt das Gerät zurück. |
WPD_CATEGORY_DEVICE_HINTS Kategorie-
Befehl | 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-
Befehl | Beschreibung |
---|---|
WPD_COMMAND_STORAGE_EJECT | Gibt 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-
Befehl | Beschreibung |
---|---|
WPD_COMMAND_SMS_SEND | Initiiert das Senden einer SMS-Nachricht durch ein FUNKTIONALEs SMS-Objekt. |
WPD_CATEGORY_STILL_IMAGE_CAPTURE Kategorie-
Befehl | Beschreibung |
---|---|
WPD_COMMAND_STILL_IMAGE_CAPTURE_INITIATE | Initiiert eine Stillbildaufnahme durch ein noch funktionsfähiges Bildobjekt. |
Verwandte Themen