Commandes (API WPD)
L’application cliente et le pilote communiquent au moyen de commandes envoyées du client (via l’API d’appareil portable Windows) au pilote (via le User-Mode Driver Framework). Une commande peut inclure ou non un paramètre et peut ou non retourner un résultat. Un client peut envoyer une commande explicitement, en appelant la méthode IPortableDevice::SendCommand ou la méthode IPortableDeviceService:SendCommand , ou implicitement, en appelant l’une des méthodes des interfaces clientes. Quelques commandes ne peuvent être envoyées qu’explicitement ; ceux-ci sont notés dans la documentation de la commande. Les pages de référence des commandes décrivent l’objectif d’une commande, ainsi que les paramètres qu’elle s’attend à recevoir et les paramètres qu’elle est censée retourner.
Une commande est identifiée par une structure PROPERTYKEY . Il se compose de deux parties : une partie GUID (le membre fmtid ) et une partie DWORD (le membre pid ). La partie GUID est utilisée pour indiquer la catégorie à laquelle appartient la commande (les commandes associées appartiennent à la même catégorie et auront donc le même fmtid). La partie DWORD indique l’ID de commande et est utilisée pour distinguer les commandes individuelles au sein d’une catégorie de commande (les valeurs pid pour les commandes de la même catégorie seront différentes).
Le tableau suivant répertorie les catégories de commandes que les appareils portables Windows définissent. Les fabricants d’appareils peuvent définir leurs propres commandes en créant leurs propres catégories de commandes et ID de commande. Toutefois, un fabricant ne doit pas ajouter de commandes aux catégories répertoriées ci-dessous, car celles-ci sont réservées par Microsoft.
Catégories de commandes
Catégorie de commande | Description |
---|---|
WPD_CATEGORY_COMMON | Commandes communes à tous les objets et appareils. |
WPD_CATEGORY_DEVICE_HINTS | Commandes utilisées pour récupérer des informations facultatives sur l’appareil qui peuvent être utilisées pour améliorer l’expérience de l’utilisateur final. |
WPD_CATEGORY_SMS | Commandes utilisées pour les appareils qui prennent en charge la fonctionnalité SMS (Short Message Service), qui est généralement exposée sur les téléphones mobiles. |
WPD_CATEGORY_STILL_IMAGE_CAPTURE | Commandes utilisées pour les appareils qui prennent en charge la capture d’images fixes. |
WPD_CATEGORY_STORAGE | Commandes utilisées pour les objets fonctionnels de stockage. |
Les commandes spécifiques définies pour chacun de ces types sont données dans les tableaux suivants, organisés par type de commande.
catégorie WPD_CATEGORY_COMMON
Commande | Description |
---|---|
WPD_COMMAND_COMMON_RESET_DEVICE | Réinitialise l’appareil. |
catégorie WPD_CATEGORY_DEVICE_HINTS
Commande | Description |
---|---|
WPD_COMMAND_DEVICE_HINTS_GET_CONTENT_LOCATION | Récupère les ID d’objet des dossiers qui peuvent contenir un objet d’un type spécifié. |
catégorie WPD_CATEGORY_STORAGE
Commande | Description |
---|---|
WPD_COMMAND_STORAGE_EJECT | Éjecte un support de stockage qui peut être éjecté à distance par le pilote. |
WPD_COMMAND_STORAGE_FORMAT | Met en forme un objet fonctionnel de stockage sur l’appareil. |
catégorie WPD_CATEGORY_SMS
Commande | Description |
---|---|
WPD_COMMAND_SMS_SEND | Lance l’envoi d’un sms par un objet fonctionnel SMS. |
catégorie WPD_CATEGORY_STILL_IMAGE_CAPTURE
Commande | Description |
---|---|
WPD_COMMAND_STILL_IMAGE_CAPTURE_INITIATE | Lance une capture d’image fixe par un objet fonctionnel d’image fixe. |
Rubriques connexes