FN_VMB_CHANNEL_SAVE_CONTINUE回调函数 (vmbuskernelmodeclientlibapi.h)

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

VmbChannelSaveContinue 函数将通道状态保存到缓冲区。 运行此函数之前,请运行 VmbChannelSaveBegin 。 驱动程序必须检查函数的返回值。

语法

FN_VMB_CHANNEL_SAVE_CONTINUE FnVmbChannelSaveContinue;

NTSTATUS FnVmbChannelSaveContinue(
  VMBCHANNEL Channel,
  PVOID SaveBuffer,
  ULONG SaveBufferSize,
  PULONG BytesFilled,
  PULONG BytesRequired
)
{...}

参数

Channel

要保存的通道的句柄。

SaveBuffer

指向要在其中保存状态信息的缓冲区的指针。

SaveBufferSize

保存缓冲区的大小(以字节为单位)。

BytesFilled

指向变量的指针,该变量接收复制到保存缓冲区的字节数。

BytesRequired

指向变量的指针,该变量接收此函数在下一次调用中取得进展所需的字节数。

返回值

VmbChannelSaveContinue 返回以下值:

返回代码 说明
STATUS_SUCCESS
已保存状态。
STATUS_BUFFER_TOO_SMALL
保存缓冲区太小。 BytesNeeded 参数包含任何进度所需的字节数。
STATUS_STATUS_BUFFER_OVERFLOW
某些数据已写入保存缓冲区,但还有更多数据需要保存。

注解

保存过程将数据保存在“区块”中,并且可以从停止的点开始继续。

如果调用方未提前分配足够的空间,可能需要多个调用。

重要

此函数通过 VMBus 内核模式客户端库 (KMCL) 接口调用,由 Vmbkmcl.sys 总线驱动程序提供。 这是从 KMCL_SERVER_ONLY_METHODS 结构访问的仅限服务器的函数。

有关详细信息,请参阅 KMCL_SERVER_ONLY_METHODS的“备注”部分。

要求

要求
最低受支持的客户端 Windows 10 版本 1803
标头 vmbuskernelmodeclientlibapi.h

另请参阅

VmbChannelSaveBegin