EVT_VMB_CHANNEL_RESTORE_PACKET回调函数 (vmbuskernelmodeclientlibapi.h)

[一些信息与预发布产品相关,在商业发行之前可能发生实质性修改。 Microsoft 对于此处提供的信息不作任何明示或默示的担保。]

当虚拟化服务提供程序 (VSP) 服务器终结点必须还原与数据包对象关联的状态时,将调用 EvtVmbChannelRestorePacket 回调函数。

语法

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 通过将 LibBufLibBufSize 传递到 VmbPacketRestore 函数,将数据包还原到以前的状态。 如果 VSP 在 EvtVmbChannelSavePacket 回调函数中为事务提供了任何内部状态,则此状态在 SaveBuf 中提供,并由 VSP 还原。

要求

要求
目标平台 Windows
标头 vmbuskernelmodeclientlibapi.h (包括 VmbusKernelModeClientLibApi.h)
IRQL PASSIVE_LEVEL

另请参阅

EvtVmbChannelSavePacket

VmbPacketAllocate

VmbPacketRestore

VmbServerChannelInitSetSaveRestorePacketCallbacks