EVT_VHF_ASYNC_OPERATION fonction de rappel (vhf.h)
Le pilote source HID implémente ce rappel d’événement s’il souhaite prendre en charge l’une des quatre opérations asynchrones pour obtenir et définir des rapports HID.
Syntaxe
EVT_VHF_ASYNC_OPERATION EvtVhfAsyncOperation;
void EvtVhfAsyncOperation(
[in] PVOID VhfClientContext,
[in] VHFOPERATIONHANDLE VhfOperationHandle,
[in, optional] PVOID VhfOperationContext,
[in] PHID_XFER_PACKET HidTransferPacket
)
{...}
Paramètres
[in] VhfClientContext
Pointeur opaque vers une mémoire tampon définie par le pilote source HID que le pilote a passée dans la structure VHF_CONFIG fournie à VhfCreate pour créer le périphérique HID virtuel.
[in] VhfOperationHandle
Handle opaque qui identifie de manière unique cette opération asynchrone.
[in, optional] VhfOperationContext
Pointeur vers une mémoire tampon qui peut être utilisée par le pilote source HID pour la maintenance de l’opération. La taille de la mémoire tampon est spécifiée par le pilote source HID dans la structure VHF_CONFIG fournie à VhfCreate.
[in] HidTransferPacket
Pointeur vers une structure HID_XFER_PACKET . Contient des informations sur un rapport HID et est utilisé par le pilote source HID et la paire de pilotes classe/mini HID pour les demandes d’E/S pour obtenir ou définir un rapport.
Valeur de retour
None
Remarques
Il existe quatre types d’opérations asynchrones que votre pilote source HID peut prendre en charge : GetFeature, SetFeature, WriteReport, GetInputReport.
Lorsque VHF obtient une requête qui définit ou interroge un rapport HID, VHF appelle la fonction de rappel EvtVhfAsyncOperation précédemment inscrite et une opération asynchrone démarre. Chaque opération est identifiée par un handle VHFOPERATIONHANDLE défini par VHF. Si le pilote a spécifié une valeur différente de zéro dans le membre OperationContextSize du VHF_CONFIG pendant l’initialisation, VHF alloue une mémoire tampon de cette taille et transmet un pointeur vers cette mémoire tampon dans le paramètre VhfOperationContext lorsqu’il appelle EvtVhfAsyncOperation.
HidTransferPacket est la mémoire tampon de transfert pour cette opération qui pointe vers une structure allouée par VHF contenant des détails spécifiques au rapport HID. Par exemple, si l’opération est GetFeature, une fois terminée, la mémoire tampon est remplie par le pilote source HID avec le rapport de fonctionnalités HID demandé.
Une fois l’opération terminée, la source HID appelle VhfAsyncOperationComplete pour signaler l’achèvement status.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 10 |
Serveur minimal pris en charge | Aucun pris en charge |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | vhf.h |
IRQL | <=DISPATCH_LEVEL |
Voir aussi
Écrire un pilote source HID à l’aide de Virtual HID Framework (VHF)