Что означает код HRESULT 0x8899000C (D2DERR_RECREATE_TARGET)?

 
Предыдущий Следующий
D2DERR_NO_HARDWARE_DEVICE D2DERR_TOO_MANY_SHADER_ELEMENTS

D2DERR_RECREATE_TARGET

Что означает D2DERR_RECREATE_TARGET

D2DERR_RECREATE_TARGET (0X8899000C) — Direct2D сообщает, что render target потерян или больше не пригоден; ресурсы, зависящие от него, нужно пересоздать.

Что проверить

Обработайте HRESULT, возвращённый EndDraw/Flush, и завершите текущий frame. Освободите device-dependent resources, связанные с потерянным target.

Создайте новый render target/device context и заново создайте bitmap/brush resources, которые принадлежат старому target; device-independent factory resources можно сохранить.

Как подтвердить причину

Причина подтверждается успешной полной перерисовкой на новом target без повторного использования device-dependent ресурсов старого target.

Технические ссылки: Microsoft: Direct2D error codes · Microsoft: ID2D1RenderTarget::EndDraw · Microsoft: DirectWrite.


Нужно найти другой код? Найти другой код состояния или ошибки.