Compartir a través de


EVT_VMB_CHANNEL_STARTED función de devolución de llamada (vmbuskernelmodeclientlibapi.h)

[Cierta información se relaciona con el producto publicado previamente que puede modificarse sustancialmente antes de su publicación comercial. Microsoft no ofrece ninguna garantía, expresa o implícita, con respecto a la información proporcionada aquí.]

La EvtVmbChannelStarted función de devolución de llamada se invoca en cualquier punto de conexión cuando un canal está totalmente configurado, pero antes de que se hayan entregado paquetes. Esto ocurre cuando el extremo opuesto abrió el canal o lo volvió a abrir después de cerrarlo.

Sintaxis

EVT_VMB_CHANNEL_STARTED EvtVmbChannelStarted;

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

Parámetros

[in] Channel

Canal que se inicia.

Valor devuelto

Ninguno

Observaciones

Una vez creado un canal, un controlador cliente puede especificar funciones de devolución de llamada para los cambios de estado, incluidos EvtVmbChannelStarted, mediante la función VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT.

Si se abre un canal en pausa o se inicia un canal abierto, la biblioteca cliente del modo kernel (KMCL) llama a EvtVmbChannelStarted después de llamar a la EvtVmbChannelOpened devolución de llamada. EvtVmbChannelStarted puede llamar al VmbPacketSend, VmbPacketSendWithExternalMdl, y VmbPacketSendWithExternalPfns funciones para poner en cola paquetes salientes. Dado que la cola entrante no se está ejecutando en este momento, esta devolución de llamada no debe bloquearse en paquetes entrantes ni finalizaciones.

La mayoría de los controladores que usan KMCL no implementan esta devolución de llamada. Una alternativa es la función de devolución de llamada EvtVmbChannelPostStart ed.

Esperando a que se complete un paquete enviado, como por la función VmbChannelSendSynchronousRequest, nunca devuelve porque los paquetes no fluyen cuando se invoca esta devolución de llamada.

Requisitos

Requisito Valor
de la plataforma de destino de Windows
encabezado de vmbuskernelmodeclientlibapi.h (incluya VmbusKernelModeClientLibApi.h)
irQL PASSIVE_LEVEL

Consulte también

EvtVmbChannelOpened

EvtVmbChannelPostStarted

VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT

VmbChannelSendSynchronousRequest

VmbPacketSend

VmbPacketSendWithExternalMdl

VmbPacketSendWithExternalPfns