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_SETDISPLAYMODE 的 hPrimaryAllocation 成员指定的分配关联的图面的格式转换为 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 |