EVT_VHF_ASYNC_OPERATION fonction de rappel (vhf.h)
Le pilote source HID implémente ce rappel d’événements 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é dans la structure VHF_CONFIG fournie à VhfCreate pour créer l’appareil HID virtuel.
[in] VhfOperationHandle
Handle opaque qui identifie de façon 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 HID class/mini pour les demandes d’E/S pour obtenir ou définir un rapport.
Valeur de retour
Aucun
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 EvtVhfAsyncOperation fonction de rappel 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 non nulle dans l'OperationContextSize membre de l'VHF_CONFIG lors de l’initialisation, VHF alloue une mémoire tampon de cette taille et transmet un pointeur à 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 la mémoire tampon terminée, elle est remplie par le pilote source HID avec le rapport de fonctionnalité HID demandé.
Une fois l’opération terminée, les appels sources HID VhfAsyncOperationComplete pour signaler l’état d’achèvement.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 10 |
serveur minimum pris en charge | Aucun pris en charge |
plateforme cible | Bureau |
d’en-tête | vhf.h |
IRQL | <=DISPATCH_LEVEL |
Voir aussi
écrire un pilote source HID à l’aide du Virtual HID Framework (VHF)