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 回呼之後,呼叫 EvtVmbChannelStarted。 EvtVmbChannelStarted 可以呼叫 VmbPacketSend、VmbPacketSendWithExternalMdl,以及 VmbPacketSendWithExternalPfns 函式來排入傳出封包的佇列。 由於傳入佇列目前未執行,因此此回呼不得封鎖傳入封包或完成。
大部分使用 KMCL 的驅動程式不會實作此回呼。 替代方法是 EvtVmbChannelPostStarted 回呼函式。
等候傳送的封包完成,例如 VmbChannelSendSynchronousRequest 函式,絕對不會傳回 ,因為叫用此回呼時封包不會流動。
要求
要求 | 價值 |
---|---|
目標平臺 | 窗戶 |
標頭 | vmbuskernelmodeclientlibapi.h (包括 VmbusKernelModeClientLibApi.h) |
IRQL | PASSIVE_LEVEL |
另請參閱
VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT