Что означает код HRESULT 0x887A002C (DXGI_ERROR_NAME_ALREADY_EXISTS)?

 
Предыдущий Следующий
DXGI_ERROR_ACCESS_DENIED DXGI_ERROR_SDK_COMPONENT_MISSING

DXGI_ERROR_NAME_ALREADY_EXISTS

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

DXGI_ERROR_NAME_ALREADY_EXISTS (0x887A002C) — Приложение пытается создать общий дескриптор с именем, уже связанным с другим ресурсом.

В подсистеме «DXGI» результат 0x887A002C относится к области «адаптеры, outputs, swap chain, shared resources и представление кадров». Описание «приложение пытается создать общий дескриптор с именем, уже связанным с другим ресурсом» сужает проверку до темы «имя, already, существующий объект».

Что проверить и как подтвердить исправление

Не начинайте с общего сброса компонента: сопоставьте первый отказ с фактическими параметрами операции. При 0x887A002C и условии «приложение пытается создать общий дескриптор с именем, уже связанным с другим ресурсом» установите идентичность и владельца уже существующего объекта; не создавайте второй экземпляр, пока не проверен жизненный цикл первого.

Диагностика 0x887A002C должна включать LUID адаптера, feature level, параметры swap chain/output и сообщения DXGI/DRED/debug layer; отдельно запишите IDXGIResource1::CreateSharedHandle. Для темы «имя, already, существующий объект» при 0x887A002C важны значения именно на первом отказе, а не после обработки ошибки верхним уровнем.

Для 0x887A002C применяйте исправление на границе первого отказа: исправляйте конкретное ограничение режима или ресурса; после device removed/access lost пересоздайте устройство и все зависящие от него объекты. Сообщение «приложение пытается создать общий дескриптор с именем, уже связанным с другим ресурсом» при 0x887A002C не следует подавлять общей обработкой исключения.

Закройте диагностику после двух проверок: исходный сценарий проходит без результата 0x887A002C, а заведомо неверный вход отклоняется на ожидаемой границе.

Документация для результата 0x887A002C: IDXGIResource1::CreateSharedHandle · DXGI error codes.


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