Что означает код HRESULT 0x88990025 (D2DERR_BITMAP_BOUND_AS_TARGET)?

 
Предыдущий Следующий
D2DERR_INVALID_TARGET D2DERR_INSUFFICIENT_DEVICE_CAPABILITIES

D2DERR_BITMAP_BOUND_AS_TARGET

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

D2DERR_BITMAP_BOUND_AS_TARGET означает, что bitmap уже привязан как текущая цель рисования Direct2D и вызывающий код пытается использовать тот же resource в роли, создающей read/write dependency conflict.

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

  • Сохраните текущий target bitmap и последовательность BeginDraw/EndDraw.
  • Проверьте операции draw/copy, которые читают из того же bitmap, в который сейчас идёт запись.
  • Убедитесь, что после смены target старый resource действительно отвязан от device context.

Как исправить

Завершите текущий render pass перед чтением содержимого либо используйте отдельный bitmap как source. Если нужен feedback-подобный эффект, создавайте промежуточную копию; попытка читать и писать один resource в несовместимых ролях остаётся ошибочной независимо от reference count.

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


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