IDirect3DDevice9::TestCooperativeLevel 方法 (d3d9.h)
报告窗口化或全屏应用程序的 Direct3D 设备的当前协作级别状态。
语法
HRESULT TestCooperativeLevel();
返回值
类型: HRESULT
如果该方法成功,则返回值D3D_OK,指示设备正常运行,并且调用应用程序可以继续。 如果方法失败,则返回值可以是以下值之一:D3DERR_DEVICELOST、D3DERR_DEVICENOTRESET、D3DERR_DRIVERINTERNALERROR。
注解
如果设备丢失,但在当前时间无法还原, 则 IDirect3DDevice9::TestCooperativeLevel 将返回D3DERR_DEVICELOST返回代码。 例如,当全屏设备失去焦点时,就会发生这种情况。 如果应用程序检测到设备丢失,则应暂停并定期调用 IDirect3DDevice9::TestCooperativeLevel ,直到收到D3DERR_DEVICENOTRESET的返回值。 然后,应用程序可能会尝试通过调用 IDirect3DDevice9::Reset 来重置设备,如果成功,请还原必要的资源并恢复正常操作。 请注意,如果设备“丢失”或“未重置”, IDirect3DDevice9::P resent 将返回D3DERR_DEVICELOST。
如果在与用于创建重置设备的线程不同的线程上调用,则对 IDirect3DDevice9::TestCooperativeLevel 的调用将失败。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | d3d9.h (包括 D3D9.h) |
Library | D3D9.lib |