EngCreateDriverObj 函数 (winddi.h)

EngCreateDriverObj 函数创建 DRIVEROBJ 结构。

语法

ENGAPI HDRVOBJ EngCreateDriverObj(
  PVOID       pvObj,
  FREEOBJPROC pFreeObjProc,
  HDEV        hdev
);

参数

pvObj

指向将由 DRIVEROBJ 结构跟踪的驱动程序资源的指针。 资源与当前客户端进程相关联。

pFreeObjProc

指向驱动程序提供的回调函数的指针,该函数释放 pvObj 指向的资源。 回调函数的定义如下,其中 pDriverObj 指向 DRIVEROBJ 结构:

BOOL CALLBACK DrvobjFreeObjProc(DRIVEROBJ *pDriverObj);

hdev

与 对象关联的物理设备的句柄。 此参数是驱动程序的 DrvCompletePDEV 函数接收的 GDI 句柄。

返回值

如果函数成功,则返回值是标识新创建的 DRIVEROBJ 结构的句柄。 否则为零。

注解

此结构用于跟踪设备管理的资源,如果资源分配进程终止而不首先清理它,则必须释放该资源。

驱动程序可以通过调用 EngDeleteDriverObj 显式删除 DRIVEROBJ 结构。 否则,当创建 DRIVEROBJ 的进程终止时,引擎通过调用 pFreeObjProc 指向的函数来释放资源。

要求

要求
最低受支持的客户端 适用于 Windows 2000 及更高版本的 Windows 操作系统。
目标平台 通用
标头 winddi.h (包括 Winddi.h)
Library Win32k.lib
DLL Win32k.sys

另请参阅

DRIVEROBJ

EngDeleteDriverObj