次の方法で共有


EVT_VMB_CHANNEL_RESTORE_PACKET コールバック関数 (vmbuskernelmodeclientlibapi.h)

[一部の情報は、商用リリース前に大幅に変更される可能性があるプレリリース製品に関連しています。 Microsoft は、ここで提供される情報に関して明示的または黙示的な保証を行いません。

EvtVmbChannelRestorePacket コールバック関数は、仮想化サービス プロバイダー (VSP) サーバー エンドポイントがパケット オブジェクトに関連付けられている状態を復元する必要があるときに呼び出されます。

構文

EVT_VMB_CHANNEL_RESTORE_PACKET EvtVmbChannelRestorePacket;

NTSTATUS EvtVmbChannelRestorePacket(
  [in] VMBCHANNEL Channel,
  [in] PVOID LibBuf,
  [in] UINT32 LibBufSize,
  [in] PVOID SaveBuf,
  [in] UINT32 SaveBufSize
)
{...}

パラメーター

[in] Channel

パケットが到着するチャネル。

[in] LibBuf

カーネル モード クライアント ライブラリ (KMCL) 内部のパケット オブジェクト状態へのポインター。

[in] LibBufSize

LibBuf パラメーターのサイズ (バイト単位)。

[in] SaveBuf

VSP に固有のトランザクション状態へのポインター。

[in] SaveBufSize

SaveBuf パラメーターのサイズ (バイト単位)。

戻り値

EvtVmbChannelRestorePacket 状態コードを返します。

備考

VmbServerChannelInitSetSaveRestorePacketCallbacks 関数は、各チャネルのパケットを復元するためのコールバック関数を設定します。

インフライト パケット オブジェクトを復元するには、VSP は VmbPacketAllocate 関数を使用して新しいパケットを割り当てる必要があります。 VSP は、VmbPacketRestore 関数に LibBufSize LibBuf 渡すことによって、パケットを以前の状態に復元します。 VSP が EvtVmbChannelSavePacket コールバック関数でトランザクションの内部状態を指定した場合、これは SaveBufで提供され、VSP によって復元されます。

必要条件

要件 価値
ターゲット プラットフォーム ウィンドウズ
ヘッダー vmbuskernelmodeclientlibapi.h (VmbusKernelModeClientLibApi.h を含む)
IRQL PASSIVE_LEVEL

関連項目

EvtVmbChannelSavePacket

VmbPacketAllocate する

VmbPacketRestore する

VmbServerChannelInitSetSaveRestorePacketCallbacks