IDCompositionDevice::CheckDeviceState 方法 (dcomp.h)
确定 DirectComposition 设备对象是否仍然有效。
语法
HRESULT CheckDeviceState(
[out] BOOL *pfValid
);
参数
[out] pfValid
如果 DirectComposition 设备对象仍然有效,则为 TRUE;否则为 FALSE。
返回值
如果函数成功,则返回S_OK。 否则,将返回 HRESULT 错误代码。 有关错误代码列表,请参阅 DirectComposition 错误代码。
注解
如果 Microsoft DirectX Graphics Infrastructure (DXGI) 设备丢失,则与 DXGI 设备关联的 DirectComposition 设备也会丢失。 当它检测到丢失的设备时,DirectComposition 会将 WM_PAINT 消息发送到使用丢失的设备撰写 DirectComposition 内容的所有窗口。 应用程序应调用 CheckDeviceState 以响应每个 WM_PAINT 消息,以确保 DirectComposition 设备对象仍然有效。 如果设备对象变得无效,应用程序必须采取措施来恢复内容。 步骤包括创建新的 DXGI 和 DirectComposition 设备,以及重新创建所有内容。 (无法仅创建新的 DXGI 设备并将其与现有的 DirectComposition 设备相关联。) 系统确保设备对象在 WM_PAINT 消息之间保持有效。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2012 [仅限桌面应用] |
目标平台 | Windows |
标头 | dcomp.h |
Library | Dcomp.lib |
DLL | Dcomp.dll |