FN_VMB_CHANNEL_SEND_SYNCHRONOUS_REQUEST fonction de rappel (vmbuskernelmodeclientlibapi.h)
[Certaines informations concernent le produit préversion qui peut être sensiblement modifié avant sa publication commerciale. Microsoft n’offre aucune garantie, expresse ou implicite, en ce qui concerne les informations fournies ici.]
La fonction VmbChannelSendSynchronousRequest envoie un paquet au point de terminaison opposé et attend une réponse.
Syntaxe
FN_VMB_CHANNEL_SEND_SYNCHRONOUS_REQUEST FnVmbChannelSendSynchronousRequest;
NTSTATUS FnVmbChannelSendSynchronousRequest(
VMBCHANNEL Channel,
PVOID Buffer,
UINT32 BufferSize,
PMDL ExternalDataMdl,
UINT32 Flags,
PVOID CompletionBuffer,
PUINT32 CompletionBufferSize,
PLARGE_INTEGER Timeout
)
{...}
Paramètres
Channel
Handle pour le canal.
Buffer
Données à envoyer.
BufferSize
Taille, en octets, des données à envoyer.
ExternalDataMdl
Liste mdL (Memory Descriptor List) qui décrit une mémoire tampon supplémentaire à envoyer.
Flags
Indicateurs standard.
CompletionBuffer
Mémoire tampon dans laquelle stocker les résultats du paquet d’achèvement.
CompletionBufferSize
Taille, en octets, de la valeur CompletionBuffer. Cette valeur doit être arrondie jusqu’à 8 octets les plus proches, sinon la fonction échoue. En cas de réussite, retourne le nombre d’octets écrits dans CompletionBuffer.
Timeout
Délai d’expiration dans le style du routage KeWaitForSingleObject. Une fois ce temps écoulé, le paquet est annulé. Pour un délai d’expiration de zéro (0), si un paquet ne fir pas dans la mémoire tampon en anneau, il n’est pas mis en file d’attente.
Valeur de retour
Retourner le code | Description |
---|---|
|
Les fonctions se sont terminées avec succès. |
|
Le paquet ne correspondait pas à la mémoire tampon et n’était pas mis en file d’attente. |
|
Le paquet a été annulé. |
|
Le canal est arrêté. |
Remarques
Les clients peuvent exécuter cette fonction avec n’importe quelle combinaison de paramètres.
La racine peut uniquement appeler ceci si *Timeout == 0
et que l’indicateur de VMBUS_CHANNEL_FORMAT_FLAG_WAIT_FOR_COMPLETION n’est pas défini.
Important
Cette fonction est appelée par le biais de l’interface KMCL (VmBus Kernel Mode Client Library), fournie par le pilote de bus Vmbkmcl.sys. Il s’agit d’une fonction cliente accessible à partir de la structure KMCL_CLIENT_INTERFACE_V1.
Pour plus d’informations, consultez la section Remarques de la KMCL_CLIENT_INTERFACE_V1.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 10, version 1803 |
d’en-tête | vmbuskernelmodeclientlibapi.h |