функция обратного вызова FN_VMB_PACKET_INITIALIZE (vmbuskernelmodeclientlibapi.h)
[Некоторые сведения относятся к предварительно выпущенным продуктам, которые могут быть существенно изменены до его коммерческого выпуска. Майкрософт не дает никаких гарантий, явных или подразумеваемых, в отношении предоставленной здесь информации.]
Функция VmbPacketInitialize инициализирует буфер, содержащий пакет VMBus.
Синтаксис
FN_VMB_PACKET_INITIALIZE FnVmbPacketInitialize;
NTSTATUS FnVmbPacketInitialize(
VMBCHANNEL Channel,
VMBPACKET VmbPacket,
UINT32 ByteCount
)
{...}
Параметры
Channel
Дескриптор для канала.
VmbPacket
Буфер, используемый для хранения пакета VMBus.
ByteCount
Размер буфера в байтах.
Возвращаемое значение
VmbPacketInitialize возвращает следующие коды состояния:
Код возврата | Описание |
---|---|
|
Функция успешно завершена. |
|
Недопустимое значение ByteCount . Он должен быть больше максимального размера пакета и размера указателя void. |
Комментарии
Размер буфера должен быть не ниже размера, вычисленного с помощью функции VmbChannelSizeofPacket .
VmbPacketInitialize является альтернативой функции VmbPacketAllocate . Используйте текущую функцию, если вызывающий объект предоставляет память для объекта пакета.
Начальная подпрограмма завершения пакета недопустима и должна быть задана перед отправкой пакета.
Важно!
Эта функция вызывается через интерфейс клиентской библиотеки режима ядра vmbus (KMCL), предоставляемый драйвером Vmbkmcl.sys шины. Это клиентская функция, доступ к ней осуществляется из структуры KMCL_CLIENT_INTERFACE_V1 .
Дополнительные сведения см. в разделе Примечания KMCL_CLIENT_INTERFACE_V1.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 версии 1803 |
Верхняя часть | vmbuskernelmodeclientlibapi.h |