EVT_VMB_CHANNEL_STARTED funzione di callback (vmbuskernelmodeclientlibapi.h)
[Alcune informazioni riguardano il prodotto non rilasciato che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non fornisce garanzie, esplicite o implicite, relativamente alle informazioni fornite qui.
Il EvtVmbChannelStarted funzione di callback viene richiamata in entrambi gli endpoint quando un canale è completamente configurato, ma prima che siano stati recapitati pacchetti. Ciò si verifica quando l'endpoint opposto ha aperto il canale o lo ha riaperto dopo averlo chiuso.
Sintassi
EVT_VMB_CHANNEL_STARTED EvtVmbChannelStarted;
void EvtVmbChannelStarted(
[in] VMBCHANNEL Channel
)
{...}
Parametri
[in] Channel
Canale avviato.
Valore restituito
Nessuno
Osservazioni
Dopo aver creato un canale, un driver client può specificare funzioni di callback per le modifiche di stato, tra cui EvtVmbChannelStarted, usando la funzione VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT.
Se viene aperto un canale sospeso o viene avviato un canale aperto, la libreria client in modalità kernel chiama EvtVmbChannelStarted dopo aver chiamato il callback EvtVmbChannelOpened. EvtVmbChannelStarted può chiamare il VmbPacketSend, VmbPacketSendWithExternalMdle VmbPacketSendWithExternalPfns per accodare i pacchetti in uscita. Poiché la coda in ingresso non è in esecuzione a questo punto, questo callback non deve bloccarsi sui pacchetti o sui completamenti in ingresso.
La maggior parte dei driver che usano KMCL non implementa questo callback. Un'alternativa è la EvtVmbChannelPostStarted funzione di callback.
In attesa del completamento di un pacchetto inviato, ad esempio dalla funzione VmbChannelSendSynchronousRequest, non restituisce mai perché i pacchetti non vengono trasmessi quando viene richiamato questo callback.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Finestre |
intestazione | vmbuskernelmodeclientlibapi.h (include VmbusKernelModeClientLibApi.h) |
IRQL | PASSIVE_LEVEL |
Vedere anche
VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT