Comandi (API WPD)

L'applicazione client e il driver comunicano tramite comandi inviati dal client (tramite l'API dispositivo portatile Windows) al driver (tramite il User-Mode Driver Framework). Un comando può o non includere un parametro e potrebbe o non restituire un risultato. Un client può inviare un comando in modo esplicito chiamando il metodo IPortableDevice::SendCommand o il metodo IPortableDeviceService:SendCommand o in modo implicito chiamando uno dei metodi delle interfacce client. Alcuni comandi possono essere inviati solo in modo esplicito; questi sono annotati nella documentazione del comando. Le pagine di riferimento del comando descrivono lo scopo di un comando, nonché i parametri previsti per la ricezione e i parametri previsti per la restituzione dei parametri.

Un comando viene identificato da una struttura PROPERTYKEY . Si tratta di due parti: una parte GUID (membro fmtid ) e una parte DWORD (membro pid ). La parte GUID viene usata per indicare la categoria a cui appartiene il comando (i comandi correlati appartengono alla stessa categoria e quindi avranno lo stesso fmtid). La parte DWORD indica l'ID comando e viene usata per distinguere i singoli comandi all'interno di una categoria di comandi (i valori pid per i comandi nella stessa categoria saranno diversi).

Nella tabella seguente sono elencate le categorie di comandi definiti dai dispositivi portatili Windows. I produttori di dispositivi possono definire i propri comandi creando categorie di comandi e ID comando personalizzati. Tuttavia, un produttore non deve aggiungere comandi alle categorie elencate di seguito, poiché queste sono riservate da Microsoft.

Categorie di comandi

Categoria Descrizione
WPD_CATEGORY_COMMON Comandi comuni a tutti gli oggetti e i dispositivi.
WPD_CATEGORY_DEVICE_HINTS Comandi usati per recuperare informazioni facoltative sul dispositivo che possono essere usate per migliorare l'esperienza utente finale.
WPD_CATEGORY_SMS Comandi usati per i dispositivi che supportano la funzionalità SMS (Short Message Service), che in genere è esposta nei telefoni cellulari.
WPD_CATEGORY_STILL_IMAGE_CAPTURE Comandi usati per i dispositivi che supportano l'acquisizione di immagini ancora.
WPD_CATEGORY_STORAGE Comandi usati per gli oggetti funzionali di archiviazione.

 

I comandi specifici definiti per ognuno di questi tipi vengono forniti nelle tabelle seguenti, organizzati per tipo di comando.

categoria WPD_CATEGORY_COMMON

Comando Descrizione
WPD_COMMAND_COMMON_RESET_DEVICE Reimposta il dispositivo.

 

categoria WPD_CATEGORY_DEVICE_HINTS

Comando Descrizione
WPD_COMMAND_DEVICE_HINTS_GET_CONTENT_LOCATION Recupera gli ID oggetto delle cartelle che possono contenere un oggetto di un tipo specificato.

 

categoria WPD_CATEGORY_STORAGE

Comando Descrizione
WPD_COMMAND_STORAGE_EJECT Esegge un supporto di archiviazione che può essere inserito in remoto dal driver.
WPD_COMMAND_STORAGE_FORMAT Formatta un oggetto funzionale di archiviazione nel dispositivo.

 

categoria WPD_CATEGORY_SMS

Comando Descrizione
WPD_COMMAND_SMS_SEND Avvia l'invio di un messaggio SMS da un oggetto funzionale SMS.

 

categoria WPD_CATEGORY_STILL_IMAGE_CAPTURE

Comando Descrizione
WPD_COMMAND_STILL_IMAGE_CAPTURE_INITIATE Avvia un'acquisizione di immagini ancora da un oggetto funzionale dell'immagine ancora.

 

Guida di riferimento alla programmazione