функция обратного вызова 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

Указатель на контекст, связанный с видеоадаптером.

Операционная система получила контекст при вызове функции CreateMiracastContext драйвера пользовательского режима Miracast.

[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 (включая Netdispumdddi.h)

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

CreateMiracastContext

DestroyMiracastContext

DxgkCbMiracastSendMessage

StartMiracastSession

StopMiracastSession