次の方法で共有


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 を使用すると、リング バッファーが、指定された制限内のバッファーを含むパケットを送信するのに十分な大きさになります。

重要

この関数は、Vmbkmcl.sys バス ドライバーによって提供される VMBus カーネル モード クライアント ライブラリ (KMCL) インターフェイスを介して呼び出されます。 これは、 KMCL_CLIENT_INTERFACE_V1 構造体からアクセスされるクライアント関数です。

詳細については、 KMCL_CLIENT_INTERFACE_V1の「解説」セクションを参照してください。

要件

要件
サポートされている最小のクライアント Windows 10 バージョン 1803
Header vmbuskernelmodeclientlibapi.h