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


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

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

Функция VmbChannelInitSetProcessPacketCallbacks задает функции обратного вызова для обработки пакетов.

Синтаксис

FN_VMB_CHANNEL_INIT_SET_PROCESS_PACKET_CALLBACKS FnVmbChannelInitSetProcessPacketCallbacks;

NTSTATUS FnVmbChannelInitSetProcessPacketCallbacks(
  VMBCHANNEL Channel,
  PFN_VMB_CHANNEL_PROCESS_PACKET ProcessPacketCallback,
  PFN_VMB_CHANNEL_PROCESSING_COMPLETE ProcessingCompleteCallback
)
{...}

Параметры

Channel

Дескриптор для канала.

ProcessPacketCallback

Функция обратного вызова, вызываемая, когда пакет готов к обработке.

ProcessingCompleteCallback

Функция обратного вызова, вызываемая при завершении обработки пакета пакетов.

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

VmbChannelInitSetProcessPacketCallbacks возвращает одно из следующих значений состояния:

Код возврата Описание
STATUS_SUCCESS
Функция успешно завершена.
STATUS_INVALID_PARAMETER_1
Значение канала было недопустимым или в недопустимом состоянии, например Отключено.

Комментарии

Эта функция имеет смысл только в том случае, если управление очередью клиентской библиотеки режима ядра (KMCL) не подавляется.

ProcessPacketCallback вызывается для каждого полученного пакета. EvtVmbChannelProcessingComplete будет вызываться каждый раз, когда кольцевой буфер, содержащий входящие пакеты, переходит от непустого к пустому. Это происходит после последнего вызова ProcessPacketCallback в одном пакете.

Важно!

Эта функция вызывается через интерфейс клиентской библиотеки режима ядра vmbus (KMCL), предоставляемый драйвером Vmbkmcl.sys шины. Это клиентская функция, доступ к ней осуществляется из структуры KMCL_CLIENT_INTERFACE_V1 .

Дополнительные сведения см. в разделе Примечания KMCL_CLIENT_INTERFACE_V1.

Требования

Требование Значение
Минимальная версия клиента Windows 10 версии 1803
Верхняя часть vmbuskernelmodeclientlibapi.h

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

EvtVmbChannelProcessingComplete

ProcessPacketCallback