EngMapEvent 函数 (winddi.h)

EngMapEvent 函数将用户模式事件对象映射到内核模式。

语法

ENGAPI PEVENT EngMapEvent(
  [in] HDEV   hDev,
  [in] HANDLE hUserObject,
       PVOID  Reserved1,
       PVOID  Reserved2,
       PVOID  Reserved3
);

参数

[in] hDev

与事件关联的物理设备的句柄。 这是作为 hdev 参数传递给驱动程序的 DrvCompletePDEV 函数的 GDI 句柄。

[in] hUserObject

要映射的用户模式事件的句柄。

Reserved1

保留供系统使用,并且必须设置为 NULL

Reserved2

保留供系统使用,并且必须设置为 NULL

Reserved3

保留供系统使用,并且必须设置为 NULL

返回值

EngMapEvent 在成功时返回指向事件对象的指针。 否则,它将返回 NULL

注解

成功映射用户事件后, EngMapEvent 会自动将事件对象设置为信号状态,尝试满足尽可能多的等待,然后将事件对象重置为未签名状态。

映射事件提供了一种机制,应用程序可以通过该机制等待内核模式图形操作完成。 显示驱动程序或视频微型端口驱动程序在使用为其映射事件的资源时向应用程序发出信号,从而释放应用程序使用该资源。

显示和微型端口驱动程序不能等待映射的事件,但可以设置或清除它们。

驱动程序还可以通过在 EngMapEvent 返回的事件对象上调用 EngUnmapEvent 来执行自己的清理。

要求

   
最低受支持的客户端 此函数在 Windows XP 及更高版本中可用。
目标平台 通用
标头 winddi.h (包括 Winddi.h)
Library Win32k.lib
DLL Win32k.sys

另请参阅

DrvCompletePDEV

EngUnmapEvent