Поделиться через


EVT_VMB_CHANNEL_OPENED функции обратного вызова (vmbuskernelmodeclientlibapi.h)

[Некоторые сведения относятся к предварительно выпущенным продуктам, которые могут быть существенно изменены до его коммерческого выпуска. Майкрософт не дает никаких гарантий, явных или подразумеваемых, в отношении предоставленной здесь информации.]

Функция обратного вызова EvtVmbChannelOpened вызывается, когда конечная точка клиента на гостевой виртуальной машине открывает канал, который был ей предложен.

Синтаксис

EVT_VMB_CHANNEL_OPENED EvtVmbChannelOpened;

NTSTATUS EvtVmbChannelOpened(
  [in] VMBCHANNEL Channel
)
{...}

Параметры

[in] Channel

Канал, который открывает гостевая виртуальная машина.

Возвращаемое значение

EvtVmbChannelClosed возвращает код состояния.

Комментарии

После создания канала драйвер клиента может указать функции обратного вызова для изменений состояния, включая EvtVmbChannelOpened, с помощью функции VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT .

После того, как канал был
Клиент клиентской библиотеки режима ядра (KMCL) вызывает функцию VmbChannelEnable . На узле эта функция предлагает гостевой канал. Для гостя эта функция принимает существующее предложение или ожидает поступления такого предложения. При открытии канала KMCL вызывает функцию обратного вызова EvtVmbChannelOpened .
После завершения этого обратного вызова канал находится в открытом состоянии.

Перед вызовом этой функции обратного вызова пакеты можно поместить в очередь, но они не могут быть отправлены.

Если драйвер клиента возвращает код состояния сбоя, канал выполняет откат до состояния, в котором трафик не передается.

Требования

Требование Значение
Целевая платформа Windows
Header vmbuskernelmodeclientlibapi.h (включая VmbusKernelModeClientLibApi.h)
IRQL PASSIVE_LEVEL

См. также раздел

VMB_CHANNEL_STATE_CHANGE_CALLBACKS_INIT

VmbChannelEnable