Partager via


FN_VMB_PACKET_INITIALIZE 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 VmbPacketInitialize initialise une mémoire tampon pour contenir un paquet VMBus.

Syntaxe

FN_VMB_PACKET_INITIALIZE FnVmbPacketInitialize;

NTSTATUS FnVmbPacketInitialize(
  VMBCHANNEL Channel,
  VMBPACKET VmbPacket,
  UINT32 ByteCount
)
{...}

Paramètres

Channel

Handle pour un canal.

VmbPacket

Mémoire tampon à utiliser pour stocker le paquet VMBus.

ByteCount

Taille de tampon, en octets.

Valeur de retour

VmbPacketInitialize retourne les codes d’état suivants :

Retourner le code Description
STATUS_SUCCESS
La fonction s’est terminée correctement.
STATUS_INVALID_PARAMETER_3
La valeur de ByteCount n’est pas valide. Elle doit être supérieure à la taille maximale du paquet, plus la taille d’un pointeur void.

Remarques

La taille de la mémoire tampon doit être au moins la taille calculée à l’aide de la fonction VmbChannelSizeofPacket.

VmbPacketInitialize est une alternative à la fonction VmbPacketAllocate. Utilisez la fonction actuelle si l’appelant fournit la mémoire de l’objet de paquet.

La routine d’achèvement initiale du paquet n’est pas valide et doit être définie avant d’envoyer le paquet.

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

Voir aussi

VmbChannelSizeofPacket

VmbPacketAllocate