NtGdiDdCreateSurfaceObject 函数
[此函数可能会随每个操作系统修订而更改。 请改用 Microsoft DirectDraw 和 Microsoft Direct3DAPIs;这些 API 使应用程序不受此类操作系统更改影响,并隐藏了与显示驱动程序直接交互所涉及的许多其他困难。]
创建一个内核模式 Surface 对象,该对象表示 puSurfaceLocal 引用的用户模式 Surface 对象。
语法
HANDLE APIENTRY NtGdiDdCreateSurfaceObject(
_In_ HANDLE hDirectDrawLocal,
_In_ HANDLE hSurface,
_In_ PDD_SURFACE_LOCAL puSurfaceLocal,
_In_ PDD_SURFACE_MORE puSurfaceMore,
_In_ PDD_SURFACE_GLOBAL puSurfaceGlobal,
_In_ BOOL bComplete
);
参数
-
hDirectDrawLocal [in]
-
内核模式 DirectDraw 对象的句柄。
-
hSurface [in]
-
同一图面的上一个句柄。 在模式切换后重新创建图面时使用。
-
puSurfaceLocal [in]
-
指向 DD_SURFACE_LOCAL 结构的指针,该结构表示要与之关联的分配内存的 DirectDraw 用户模式图面对象。 有关详细信息,请参阅 DDK 文档。
-
puSurfaceMore [in]
-
指向 DD_SURFACE_MORE 结构的指针,该结构包含每个单独的图面对象的其他本地数据。 有关详细信息,请参阅 DDK 文档。
-
puSurfaceGlobal [in]
-
指向 DD_SURFACE_GLOBAL 结构的指针,该结构包含与多个图面全局共享的图面数据。 有关详细信息,请参阅 DDK 文档。
-
bComplete [in]
-
内核模式对象完成标志。 可以是以下值之一。
-
(TRUE)
-
完成有关内核模式表示的所有处理。
-
(FALSE)
-
创建 对象,但不设置内部数据,例如内存指针。 可以使用 NtGdiDdAttachSurface 附加使用 FALSE 创建的对象,并通过调用 NtGdiDdCreateSurface 来完成。
返回值
如果成功,此函数将返回内核模式图面表示形式的句柄;否则返回 NULL。
备注
建议应用程序使用 DirectDraw 和 Direct3D API 来创建和管理图形设备对象。 这些构造以简化且与操作系统无关的方式抽象化设备创建过程。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 |
Windows 2000 Server [仅限桌面应用] |
标头 |
|
另请参阅