Freigeben über


EVT_VMB_CHANNEL_PROCESS_PACKET Rückruffunktion (vmbuskernelmodeclientlibapi.h)

[Einige Informationen beziehen sich auf die Vorabversion, die vor der kommerziellen Freigabe möglicherweise wesentlichen Änderungen unterliegt. Microsoft übernimmt für die hier bereitgestellten Informationen keine Gewährleistung, weder ausdrücklicher noch impliziter Art.]

Die Rückruffunktion EvtVmbChannelProcessPacket wird aufgerufen, wenn ein Paket im eingehenden Ringpuffer eingeht.

Syntax

EVT_VMB_CHANNEL_PROCESS_PACKET EvtVmbChannelProcessPacket;

void EvtVmbChannelProcessPacket(
  [in] VMBCHANNEL Channel,
  [in] VMBPACKETCOMPLETION Packet,
  [in] PVOID Buffer,
  [in] UINT32 BufferLength,
  [in] UINT32 Flags
)
{...}

Parameter

[in] Channel

Der Kanal, auf dem das Paket eingeht.

[in] Packet

Der Abschlusskontext, der dieses Paket an die Kernelmodus-Clientbibliothek (KMCL) identifiziert, wenn die Transaktion eingestellt werden kann.

[in] Buffer

Das Paket, das vom entgegengesetzten Endpunkt gesendet wurde. Dieser Wert enthält nicht die VMBus- und KMCL-Header.

[in] BufferLength

Die Länge des Buffer-Parameters in Bytes.

[in] Flags

Flaggen. Folgende Werte sind möglich:

Wert Bedeutung
VMBUS_CHANNEL_PROCESS_PACKET_FLAGS
0x1
Das Paket verweist auf externe Daten. Diese Daten können mithilfe der Funktion VmbChannelPacketGetExternalData abgerufen werden.

Rückgabewert

Keine

Bemerkungen

Der Clienttreiber registriert seine Implementierung dieser Rückruffunktion mithilfe der Funktion VmbChannelInitSetProcessPacketCallbacks .

Jedes Mal, wenn Sie diese Funktion aufrufen, müssen Sie schließlich die Funktion VmbChannelPacketComplete aufrufen.

Diese Rückruffunktion kann bei DISPATCH_LEVEL oder niedriger aufgerufen werden, es sei denn, der Kanal wurde so konfiguriert, dass die Paketverarbeitung auf einen Workerthread zurückgestellt wird.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile vmbuskernelmodeclientlibapi.h (einschließen VmbusKernelModeClientLibApi.h)
IRQL <=DISPATCH_LEVEL

Weitere Informationen

VmbChannelInitSetProcessPacketCallbacks

VmbChannelPacketComplete

VmbChannelPacketGetExternalData