| Предыдущий | Следующий |
| DXGI_ERROR_HW_PROTECTION_OUTOFMEMORY | DXGI_ERROR_NON_COMPOSITED_UI |
DXGI_ERROR_DYNAMIC_CODE_POLICY_VIOLATION
Что означает DXGI_ERROR_DYNAMIC_CODE_POLICY_VIOLATION
DXGI_ERROR_DYNAMIC_CODE_POLICY_VIOLATION (0x887A0031) — Создание устройства нарушило бы политику динамического кода процесса.
Результат 0x887A0031 пришёл из подсистемы «DXGI» при работе с областью «адаптеры, outputs, swap chain, shared resources и представление кадров». Для сообщения «создание устройства нарушило бы политику динамического кода процесса» практический предмет проверки — «dynamic, code, политика, violation».
Что проверить и как подтвердить исправление
Сначала сопоставьте первый отказ с фактическими параметрами операции. Для 0x887A0031 в условии «создание устройства нарушило бы политику динамического кода процесса» воспроизведите отказ на минимальном объекте и меняйте только одно условие за запуск, чтобы отделить неверный вход от состояния системы.
Перед повтором 0x887A0031 зафиксируйте LUID адаптера, feature level, параметры swap chain/output и сообщения DXGI/DRED/debug layer; отдельно запишите HRESULT, LUID. Различия по теме «dynamic, code, политика, violation» для 0x887A0031 покажут, изменился ли первый неуспешный этап.
Исправляя 0x887A0031, меняйте только подтверждённую причину: исправляйте конкретное ограничение режима или ресурса; после device removed/access lost пересоздайте устройство и все зависящие от него объекты. Результат 0x887A0031 с описанием «создание устройства нарушило бы политику динамического кода процесса» должен исчезнуть на исходных данных без обхода штатной проверки.
Закройте диагностику после двух проверок: исходный сценарий проходит без результата 0x887A0031, а заведомо неверный вход отклоняется на ожидаемой границе.
Документация для результата 0x887A0031: DXGI error codes · DXGI overview · Direct3D 12 shader cache StoreValue.
Нужно найти другой код? Найти другой код состояния или ошибки.
