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
某些数据已写入保存缓冲区,但需要保存更多数据。

言论

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

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

重要

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

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

要求

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

另请参阅

VmbChannelSaveBegin