функция обратного вызова PFN_HANDLE_KMD_MESSAGE (netdispumdddi.h)
Вызывается операционной системой для обработки сообщения в асинхронном режиме ядра, которое получает драйвер пользовательского режима Miracast, когда драйвер мини-порта дисплея вызывает функцию DxgkCbMiracastSendMessage.
Синтаксис
PFN_HANDLE_KMD_MESSAGE PfnHandleKmdMessage;
NTSTATUS PfnHandleKmdMessage(
[in] PVOID pMiracastContext,
[in] UINT InputBufferSize,
[in] VOID *pInputBuffer,
[in] UINT OutputBufferSize,
[out] VOID *pOutputBuffer,
[out] UINT *pBytesReturned
)
{...}
Параметры
[in] pMiracastContext
Указатель на контекст, связанный с адаптером отображения.
Операционная система получила контекст при вызове функции драйвера в пользовательском режиме Miracast CreateMiracastContext.
[in] InputBufferSize
Размер входного буфера pInputBuffer, предоставляемых операционной системой.
[in] pInputBuffer
Указатель на входной буфер, предоставленный операционной системой.
[in] OutputBufferSize
Размер выходного буфера pOutputBuffer, предоставляемых операционной системой.
[out] pOutputBuffer
Указатель на выходной буфер, предоставленный операционной системой.
[out] pBytesReturned
Указатель на буфер, предоставленный операционной системой, который содержит количество возвращаемых байтов, записанных драйвером мини-порта отображения в pOutputBuffer.
Возвращаемое значение
При успешном выполнении эта функция возвращает STATUS_SUCCESS. В противном случае функция возвращает код ошибки, определенный в заголовке Ntstatus.h.
Замечания
Безопасность потоков
При вызове этой функции возможно, что она также была вызвана в другом потоке. Поэтому драйвер отвечает за синхронизацию нескольких вызовов HandleKernelModeMessage.
Операционная система гарантирует, что эта функция не вызывается при вызове CreateMiracastContext, DestroyMiracastContext, StartMiracastSessionи StopMiracastSession. Все сообщения, отправляемые драйвером мини-порта отображения во время запуска подключенного сеанса Miracast (StartMiracastSession) блокируются до завершения процесса запуска сеанса. Операционная система также блокирует все сообщения, которые драйвер мини-порта отображения отправляет во время или после вызова, чтобы остановить сеанс Miracast (StopMiracastSession).
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 8.1 |
минимальный поддерживаемый сервер | Windows Server 2012 R2 |
целевая платформа | Настольный |
заголовка | netdispumdddi.h (include Netdispumdddi.h) |