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 的 多个调用。

操作系统保证在调用 CreateMiracastContextDestroyMiracastContextStartMiracastSessionStopMiracastSession 时不调用此函数。 在启动 Miracast 连接会话期间显示微型端口驱动程序发送的所有消息 (StartMiracastSession) 将被阻止,直到会话启动过程完成。 操作系统还会阻止显示微型端口驱动程序在调用期间或之后发送的所有消息,以停止 Miracast 会话 (StopMiracastSession) 。

要求

要求
最低受支持的客户端 Windows 8.1
最低受支持的服务器 Windows Server 2012 R2
目标平台 桌面
标头 netdispumdddi.h (包括 Netdispumdddi.h)

另请参阅

CreateMiracastContext

DestroyMiracastContext

DxgkCbMiracastSendMessage

StartMiracastSession

StopMiracastSession