IDeviceIoControl ::D eviceIoControlAsync, méthode (deviceaccess.h)
La méthode DeviceIoControlAsync envoie une demande de contrôle d’entrée/sortie (E/S) de périphérique asynchrone à l’interface de l’appareil que l’appel à la fonction CreateDeviceAccessInstance a spécifiée.
Syntaxe
HRESULT DeviceIoControlAsync(
[in] DWORD ioControlCode,
[in] UCHAR *inputBuffer,
[in] DWORD inputBufferSize,
[out] UCHAR *outputBuffer,
[in] DWORD outputBufferSize,
[in] IDeviceRequestCompletionCallback *requestCompletionCallback,
[out] ULONG_PTR *cancelContext
);
Paramètres
[in] ioControlCode
Code de contrôle d’E/S pour l’opération.
[in] inputBuffer
Mémoire tampon d’entrée facultative pour l’opération.
[in] inputBufferSize
Taille de la mémoire tampon d’entrée, en octets.
[out] outputBuffer
Mémoire tampon de sortie opérationnelle pour l’opération.
[in] outputBufferSize
Taille de la mémoire tampon de sortie, en octets.
[in] requestCompletionCallback
Interface de rappel sur laquelle la méthode RequestCompletion est appelée si l’opération est envoyée avec succès.
[out] cancelContext
Pointeur facultatif qui reçoit un contexte d’annulation qui peut être passé à la méthode CancelOperation pour annuler une demande en attente.
Valeur retournée
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
Si la demande est envoyée correctement (autrement dit, l’appel de cette fonction ne renvoie pas immédiatement d’erreur), le résultat de l’opération est disponible dans le rappel RequestCompletion de l’interface IDeviceRequestCompletionCallback fournie.
Une opération pour laquelle le système (système d’exploitation ou pilote de périphérique) échoue immédiatement n’entraîne pas de rappel. Cela signifie que l’appelant reçoit un rappel uniquement si cette fonction retourne S_OK.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | deviceaccess.h |
Bibliothèque | Deviceaccess.lib |