| Предыдущий | Следующий |
| D2DERR_TEXT_RENDERER_NOT_RELEASED | D2DERR_INVALID_GRAPH_CONFIGURATION |
D2DERR_EXCEEDS_MAX_BITMAP_SIZE
Что означает D2DERR_EXCEEDS_MAX_BITMAP_SIZE
D2DERR_EXCEEDS_MAX_BITMAP_SIZE — HRESULT, относящийся к области Direct2D. Размер создаваемого Direct2D bitmap превышает гарантированный предел для текущего уровня возможностей Direct3D.
Применительно к D2DERR_EXCEEDS_MAX_BITMAP_SIZE этот HRESULT возвращён Direct2D. В случае D2DERR_EXCEEDS_MAX_BITMAP_SIZE для диагностики важны factory/resource domain, параметры bitmap/brush/layer и состояние цели между BeginDraw и EndDraw.
Практический вывод для D2DERR_EXCEEDS_MAX_BITMAP_SIZE: этот HRESULT фиксирует описанное условие, но сам по себе не показывает, какой участник операции первым нарушил контракт. Для D2DERR_EXCEEDS_MAX_BITMAP_SIZE найдите первый вызов, вернувший статус, и только после этого меняйте конфигурацию подсистемы Direct2D.
Как читать имя D2DERR_EXCEEDS_MAX_BITMAP_SIZE
Имя D2DERR_EXCEEDS_MAX_BITMAP_SIZE помогает сузить поиск: EXCEEDS — технический маркер «exceeds»; MAX — предельное значение; BITMAP — растровое изображение; SIZE — размер. Эти части имени не заменяют документацию API, но позволяют проверить, что журнал и код относятся к одному и тому же условию.
Что проверить в первую очередь
Применительно к D2DERR_EXCEEDS_MAX_BITMAP_SIZE ошибка связана с размером или диапазоном. В случае D2DERR_EXCEEDS_MAX_BITMAP_SIZE разделяйте размер выделенного буфера, фактическую длину данных, требуемую длину и единицы измерения.
- Для D2DERR_EXCEEDS_MAX_BITMAP_SIZE запишите переданный и требуемый размеры, тип счётчика и единицы — байты, символы, элементы или блоки.
- При разборе D2DERR_EXCEEDS_MAX_BITMAP_SIZE пересоздайте device-dependent resources после потери устройства вместо повторного использования старых объектов.
- При разборе D2DERR_EXCEEDS_MAX_BITMAP_SIZE запишите метод Direct2D, параметры ресурса, factory и render target, которым принадлежат участвующие объекты.
- При разборе D2DERR_EXCEEDS_MAX_BITMAP_SIZE проверьте баланс BeginDraw/EndDraw, Push/Pop, активные layer/clip и текущую target bitmap.
- При разборе D2DERR_EXCEEDS_MAX_BITMAP_SIZE сверьте размеры текстур и поддерживаемые форматы с feature level и возможностями графического адаптера.
Как локализовать источник
- Для D2DERR_EXCEEDS_MAX_BITMAP_SIZE проверяйте исправление как на аппаратном, так и на программном WARP-рендерере, если это допустимо.
- Для D2DERR_EXCEEDS_MAX_BITMAP_SIZE включите Direct2D debug layer и сохраните первое диагностическое сообщение перед HRESULT.
- Для D2DERR_EXCEEDS_MAX_BITMAP_SIZE создайте минимальную сцену с теми же ресурсами и последовательностью вызовов.
Проверка после изменения
Применительно к D2DERR_EXCEEDS_MAX_BITMAP_SIZE исправление D2DERR_EXCEEDS_MAX_BITMAP_SIZE подтверждено, когда исходный сценарий завершается ожидаемо, журналы больше не содержат этого статуса, а отдельный отрицательный тест по-прежнему корректно обнаруживает описанное условие.
Ссылки по D2DERR_EXCEEDS_MAX_BITMAP_SIZE
Нужно найти другой код? Найти другой код состояния или ошибки.
