共用方式為


EVT_VMB_CHANNEL_STARTED回呼函式 (vmbuskernelmodeclientlibapi.h)

[某些資訊與發行前的產品有關,在正式發行前可能會大幅修改。 Microsoft未就此處提供的資訊提供任何明示或默示擔保。

EvtVmbChannelStarted 回呼函式會在通道完全設定,但在傳遞任何封包之前,於任一端點叫用。 當相反的端點開啟通道或在關閉通道之後重新開啟時,就會發生這種情況。

語法

EVT_VMB_CHANNEL_STARTED EvtVmbChannelStarted;

void EvtVmbChannelStarted(
  [in] VMBCHANNEL Channel
)
{...}

參數

[in] Channel

啟動的通道。

傳回值

沒有

言論

建立通道之後,客戶端驅動程式可以使用 VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT 函式來指定狀態變更的回呼函式,包括 EvtVmbChannelStarted

如果已開啟暫停的通道或已開啟的通道啟動,核心模式用戶端連結庫 (KMCL) 會在呼叫 EvtVmbChannelOpened 回呼之後,呼叫 EvtVmbChannelStartedEvtVmbChannelStarted 可以呼叫 VmbPacketSendVmbPacketSendWithExternalMdl,以及 VmbPacketSendWithExternalPfns 函式來排入傳出封包的佇列。 由於傳入佇列目前未執行,因此此回呼不得封鎖傳入封包或完成。

大部分使用 KMCL 的驅動程式不會實作此回呼。 替代方法是 EvtVmbChannelPostStarted 回呼函式。

等候傳送的封包完成,例如 VmbChannelSendSynchronousRequest 函式,絕對不會傳回 ,因為叫用此回呼時封包不會流動。

要求

要求 價值
目標平臺 窗戶
標頭 vmbuskernelmodeclientlibapi.h (包括 VmbusKernelModeClientLibApi.h)
IRQL PASSIVE_LEVEL

另請參閱

EvtVmbChannelOpened

EvtVmbChannelPostStarted

VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT

VmbChannelSendSynchronousRequest

VmbPacketSend

VmbPacketSendWithExternalMdl

VmbPacketSendWithExternalPfns