EVT_VMB_CHANNEL_PROCESS_PACKET fonction de rappel (vmbuskernelmodeclientlibapi.h)
[Certaines informations portent sur la préversion du produit, qui est susceptible d’être en grande partie modifié avant sa commercialisation. Microsoft ne donne aucune garantie, expresse ou implicite, concernant les informations fournies ici.]
La fonction de rappel EvtVmbChannelProcessPacket est appelée lorsqu’un paquet arrive dans la mémoire tampon d’anneau entrante.
Syntaxe
EVT_VMB_CHANNEL_PROCESS_PACKET EvtVmbChannelProcessPacket;
void EvtVmbChannelProcessPacket(
[in] VMBCHANNEL Channel,
[in] VMBPACKETCOMPLETION Packet,
[in] PVOID Buffer,
[in] UINT32 BufferLength,
[in] UINT32 Flags
)
{...}
Paramètres
[in] Channel
Canal sur lequel le paquet arrive.
[in] Packet
Contexte d’achèvement, qui identifie ce paquet à la bibliothèque cliente en mode noyau (KMCL) lorsque la transaction peut être retirée.
[in] Buffer
Paquet envoyé par le point de terminaison opposé. Cette valeur ne contient pas les en-têtes VMBus et KMCL.
[in] BufferLength
Longueur du paramètre Buffer , en octets.
[in] Flags
Drapeaux. Il peut prendre les valeurs suivantes :
Valeur | Signification |
---|---|
|
Le paquet fait référence à des données externes. Ces données peuvent être récupérées à l’aide de la fonction VmbChannelPacketGetExternalData . |
Valeur de retour
None
Remarques
Le pilote client inscrit son implémentation de cette fonction de rappel à l’aide de la fonction VmbChannelInitSetProcessPacketCallbacks .
Chaque fois que vous appelez cette fonction, vous devez appeler la fonction VmbChannelPacketComplete .
Cette fonction de rappel peut être appelée à DISPATCH_LEVEL ou à une valeur inférieure, sauf si le canal a été configuré pour différer le traitement des paquets vers un thread de travail.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | vmbuskernelmodeclientlibapi.h (incluez VmbusKernelModeClientLibApi.h) |
IRQL | <=DISPATCH_LEVEL |