функция обратного вызова FN_VMB_CHANNEL_CREATE_GPADL_FROM_BUFFER (vmbuskernelmodeclientlibapi.h)
[Некоторые сведения связаны с предварительно выпущенным продуктом, который может быть существенно изменен до его коммерческого выпуска. Корпорация Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых в отношении информации, предоставленной здесь.]
Функция VmbChannelCreateGpadlFromBuffer создает список дескрипторов гостевого физического адреса (GPADL), описывающий клиентский буфер. GPADL можно использовать на сервере для доступа к буферу.
Синтаксис
FN_VMB_CHANNEL_CREATE_GPADL_FROM_BUFFER FnVmbChannelCreateGpadlFromBuffer;
NTSTATUS FnVmbChannelCreateGpadlFromBuffer(
VMBCHANNEL Channel,
UINT32 Flags,
PVOID Buffer,
UINT32 ByteCount,
PUINT32 GpadlHandle
)
{...}
Параметры
Channel
Дескриптор канала.
Flags
Флаги. Возможные значения:
Buffer
Буфер, который проверяется и блокируется до тех пор, пока GPADL не будет удален.
ByteCount
Длина буфера в байтах.
GpadlHandle
Дескриптор GPADL созданного списка дескрипторов памяти (MDL). Отправьте это на сервер, чтобы использовать функцию VmbChannelMapGpadl.
Возвращаемое значение
Возвращает STATUS_SUCCESS, если операция выполнена успешно, или соответствующий код ошибки NTSTATUS в противном случае.
Замечания
Когда эта функция возвращается, конечная точка сервера может вызывать VmbChannelMapGpadl, так как VMBus уже отправит описание GPADL обратной конечной точке и получил подтверждение.
GPADL необходимо удалить с помощью функции VmbChannelDeleteGpadl.
Важный
Эта функция вызывается через клиентский интерфейс клиентской библиотеки режима ядра VMBus (KMCL), предоставляемый драйвером шины Vmbkmcl.sys. Это клиентская функция, доступ к ней осуществляется из структуры KMCL_CLIENT_INTERFACE_V1.
Дополнительные сведения см. в разделе "Примечания" KMCL_CLIENT_INTERFACE_V1.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 10 версии 1803 |
заголовка | vmbuskernelmodeclientlibapi.h |