Что означает код HRESULT 0x8899001C (D2DERR_TEXT_RENDERER_NOT_RELEASED)?

 
Предыдущий Следующий
D2DERR_TEXT_EFFECT_IS_WRONG_TYPE D2DERR_EXCEEDS_MAX_BITMAP_SIZE

D2DERR_TEXT_RENDERER_NOT_RELEASED

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

D2DERR_TEXT_RENDERER_NOT_RELEASED (0x8899001C) — клиент удержал IDWriteTextRenderer после завершения вызова отрисовки текста.

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

Отдельно проверьте, что callback не удерживает IDWriteTextRenderer после DrawText/DrawTextLayout.

После исправления повторите тот же Direct2D API на сопоставимом ресурсе и убедитесь, что исчезло именно состояние «Клиент удержал IDWriteTextRenderer после завершения вызова отрисовки текста», а debug layer не сообщает новый предшествующий отказ.

Проверьте lifetime пользовательского text renderer и ссылки, удерживаемые layout/callback path после завершения рисования. Сохраните AddRef/Release баланс или COM reference trace вокруг проблемного frame; новый renderer не должен создаваться как способ скрыть оставшуюся ссылку на старый объект.

Технические ссылки


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