次の方法で共有


EVT_VMB_PACKET_COMPLETION_ROUTINE コールバック関数 (vmbuskernelmodeclientlibapi.h)

[一部の情報はリリース前の製品に関することであり、正式版がリリースされるまでに大幅に変更される可能性があります。 ここに記載された情報について、Microsoft は明示または黙示を問わずいかなる保証をするものでもありません。]

送信されたパケットに関連付けられているトランザクションが完了すると、 EvtVmbPacketCompletionRoutine コールバック関数が呼び出されます。

構文

EVT_VMB_PACKET_COMPLETION_ROUTINE EvtVmbPacketCompletionRoutine;

void EvtVmbPacketCompletionRoutine(
  [in] VMBPACKET Packet,
  [in] NTSTATUS Status,
  [in] PVOID Buffer,
  [in] UINT32 BufferLength
)
{...}

パラメーター

[in] Packet

完了したパケット。

[in] Status

状態コード。

[in] Buffer

反対側のエンドポイントからの完了応答を含むバッファー (存在する場合)。

[in] BufferLength

Buffer パラメーターの長さ (バイト単位)。

戻り値

なし

解説

VmbPacketAllocate 関数を使用してパケット オブジェクトを割り当てた後、クライアント ドライブは VmbPacketSetCompletionRoutine 関数を使用して完了コールバックを設定できます。

送信者が VMBUS_CHANNEL_FORMAT_FLAG_WAIT_FOR_COMPLETION フラグを使用した場合、このコールバックの呼び出しは、反対のエンドポイントがパケットを受信して完了したことを意味します。 そうでない場合、発信パケットはリング バッファーに正常に配置されました。

要件

要件
対象プラットフォーム Windows
ヘッダー vmbuskernelmodeclientlibapi.h (VmbusKernelModeClientLibApi.h を含む)
IRQL <=DISPATCH_LEVEL

こちらもご覧ください

VmbPacketAllocate

VmbPacketSetCompletionRoutine