FN_VMB_CHANNEL_INIT_SET_MAXIMUM_EXTERNAL_DATA回调函数 (vmbuskernelmodeclientlibapi.h)

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

VmbChannelInitSetMaximumExternalData 函数设置数据包描述但未直接在数据包中发送的数据的最大大小和链长度。 即 ExternalDataMdl 描述的缓冲区的最大大小。

语法

FN_VMB_CHANNEL_INIT_SET_MAXIMUM_EXTERNAL_DATA FnVmbChannelInitSetMaximumExternalData;

NTSTATUS FnVmbChannelInitSetMaximumExternalData(
  VMBCHANNEL Channel,
  UINT32 DataSize,
  UINT32 ChainLength
)
{...}

参数

Channel

指向内核模式客户端库的指针 (KMCL) 通道。

DataSize

外部数据的最大大小。

ChainLength

传入 MDL 链中) 内存描述符Lists (MDL 的最大数目。

返回值

VmbChannelInitSetMaximumExternalData 可以返回以下状态值之一:

返回代码 说明
STATUS_SUCCESS
函数已成功完成。
STATUS_INVALID_PARAMETER_1
Channel 值无效或处于无效状态,例如 Disabled。
STATUS_INVALID_PARAMETER_2
DataSize 值无效。 零 (0) 无效。
STATUS_INVALID_PARAMETER_3
ChainLength 值无效。 零 (0) 无效。

注解

KMCL 可确保环形缓冲区足够大,可以发送包含指定限制中的缓冲区的数据包。

重要

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

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

要求

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