Шаг 36 - IDirect3DDevice8::TestCooperativeLevel

Сообщает текущий статус устройства Direct3D для оконных или полноэкранных приложений.

HRESULT TestCooperativeLevel();

Описание параметров

Нет никаких.

Возвращаемое значение

Если функция завершена успешно, тогда возвращается значение D3D_OK.

Если нет, то один из следующих флажков: D3DERR_DEVICELOST или <&&local 17&&>D3DERR_DEVICENOTRESET.

Примечание

Если устройство будет потеряно и не может быть восстановлено в текущий момент времени, IDirect3DDevice8::TestCooperativeLevel возвращает D3DERR_DEVICELOST.

Это произойдет, например, если устройство полноэкранного режима потеряло фокус на данное окно. Если приложение потеряло устройство, то делает паузу и переодически вызывает функцию TestCooperativeLevel, пока он не возвратит значение D3DERR_DEVICENOTRESET. И затем попытается сбросить это устройтсво, вызывая функцию IDirect3DDevice8::Reset и восстанавливает необходимые ресурсы, для продолжения нормальной работы. Обратите внимание, что функция IDirect3DDevice8::Present возвращает D3DERR_DEVICELOST, если устройство потеряно или сброшено.

Требования

Заголовки: объявить D3d8.h.

Подключить библиотеку: Используйте D3d8.lib.

Примеры

См. раздел Direct3D: "Шаг 8 - Потеря устройств при нажатии клавиш Alt+TAB".


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Хавов Евгений Валерьевич - 25.08.2002