EVT_VMB_CHANNEL_SAVE_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 EvtVmbChannelSavePacket wird aufgerufen, wenn der VSP-Endpunkt (Virtualization Service Provider) den einem Paket zugeordneten Zustand speichern muss.

Syntax

EVT_VMB_CHANNEL_SAVE_PACKET EvtVmbChannelSavePacket;

NTSTATUS EvtVmbChannelSavePacket(
  [in]  VMBCHANNEL Channel,
  [in]  VMBPACKET Packet,
  [out] PVOID SaveBuf,
  [in]  UINT32 SaveBufSize,
  [out] PUINT32 BytesNeeded
)
{...}

Parameter

[in] Channel

Der Kanal, auf dem das Paket eingeht.

[in] Packet

Das Paket, für das VSP den Status speichert.

[out] SaveBuf

Der Puffer, in dem der Zustand gespeichert werden soll.

[in] SaveBufSize

Größe des SaveBuf-Parameters in Bytes.

[out] BytesNeeded

Die zum Speichern des Transaktionsstatus erforderliche Größe in Bytes.

Rückgabewert

EvtVmbChannelSavePacket gibt einen status Code zurück.

Hinweise

Die Funktion VmbServerChannelInitSetSaveRestorePacketCallbacks legt eine Rückruffunktion zum Speichern von Paketen für jeden Kanal fest.

Der VSP speichert den Zustand, der der Transaktion zugeordnet ist, der für den VSP eindeutig ist. Die Kernelmodus-Clientbibliothek (KMCL) speichert ihren eigenen Zustand.

Diese Funktion wird für jedes Paketobjekt aufgerufen, das derzeit verwendet wird. Der erste Aufruf übergibt einen Nullwert (0) für den SaveBufSize-Parameter . Dieser Aufruf schlägt fehl, wenn ein Zustand gespeichert werden muss, der bytesNeeded mit der tatsächlichen Größenanforderung füllt. Wenn dieser erste Aufruf einen Fehlercode zurückgibt, ruft die KMCL ein zweites Mal mit einem Puffer von mindestens der länge auf, die im ersten Aufruf angegeben ist.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile vmbuskernelmodeclientlibapi.h (einschließlich VmbusKernelModeClientLibApi.h)
IRQL PASSIVE_LEVEL

Weitere Informationen

VmbServerChannelInitSetSaveRestorePacketCallbacks