D3DKMTSetDisplayMode 函数 (d3dkmthk.h)

D3DKMTSetDisplayMode 函数设置用于扫描到显示器的分配。

语法

NTSTATUS D3DKMTSetDisplayMode(
  [in, out] const D3DKMT_SETDISPLAYMODE *unnamedParam1
);

参数

[in, out] unnamedParam1

指向描述用于扫描的分配的 D3DKMT_SETDISPLAYMODE 结构的指针。

返回值

D3DKMTSetDisplayMode 返回以下值之一:

返回代码 描述
STATUS_SUCCESS 已成功设置显示模式。
STATUS_DEVICE_REMOVED 图形适配器已停止或显示设备已重置。
STATUS_INVALID_PARAMETER 参数已验证并确定不正确。
STATUS_GRAPHICS_NOT_EXCLUSIVE_MODE_OWNER 在调用 D3DKMTSetDisplayMode之前,设备未获取视图的独占所有权。 因此,设备无法设置显示模式。
D3DDDIERR_INCOMPATIBLEPRIVATEFORMAT OpenGL 可安装客户端驱动程序(ICD)必须将与 D3DKMT_SETDISPLAYMODEhPrimaryAllocation 成员指定的分配关联的图面的格式转换为 D3DKMT_SETDISPLAYMODEPrivateDriverFormatAttribute 成员所指定的格式属性。 然后,ICD 应再次调用 D3DKMTSetDisplayMode。 ICD 可以分配新的分配,执行从旧主节点到新主节点的转换位块传输(bitblt),然后销毁旧的主节点,前提是 ICD 对所有后续作使用此分配句柄进行此分配。 ICD 应重复此过程,直到 D3DKMTSetDisplayMode 返回不同的返回值。

此函数还可以返回其他 NTSTATUS 值。

言论

在 OpenGL ICD 调用 D3DKMTSetDisplayMode 以设置使用扩展格式、多采样方法或两者的新显示模式之前,ICD 必须确保当前 GDI 显示模式的分辨率与新显示模式相同。 否则,D3DKMTSetDisplayMode 返回 STATUS_INVALID_PARAMETER

要求

要求 价值
最低支持的客户端 Windows Vista
目标平台 普遍
标头 d3dkmthk.h (包括 D3dkmthk.h)
Gdi32.lib
DLL Gdi32.dll

另请参阅

D3DKMT_SETDISPLAYMODE