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


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

См. также

CreateMiracastContext

DestroyMiracastContext

DxgkCbMiracastSendMessage

StartMiracastSession

StopMiracastSession