Что означает код HRESULT 0x88985004 (DWRITE_E_FILEACCESS)?

 
Предыдущий Следующий
DWRITE_E_FILENOTFOUND DWRITE_E_FONTCOLLECTIONOBSOLETE

DWRITE_E_FILEACCESS

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

DWRITE_E_FILEACCESS (0x88985004) — Файл шрифта существует, но его не удалось открыть из-за отказа в доступе, нарушения совместного использования или аналогичной ошибки.

При результате 0x88985004 граница диагностики проходит внутри подсистемы «DirectWrite», в области «шрифтовые файлы, collections, text layout и загрузку удалённых шрифтов». Здесь сообщение «файл шрифта существует, но его не удалось открыть из-за отказа в доступе, нарушения совместного использования или аналогичной ошибки» связано с темой «fileaccess».

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

Сначала сопоставьте первый отказ с фактическими параметрами операции. Для 0x88985004 в условии «файл шрифта существует, но его не удалось открыть из-за отказа в доступе, нарушения совместного использования или аналогичной ошибки» воспроизведите отказ на минимальном объекте и меняйте только одно условие за запуск, чтобы отделить неверный вход от состояния системы.

Сопоставьте с результатом 0x88985004 следующие данные: семейство и face, locale, font file, параметры layout и первый DirectWrite-вызов. До исправления 0x88985004 сохраните исходное состояние объекта по теме «fileaccess».

Практическое исправление для 0x88985004: проверьте формат и доступность шрифта, совместимость renderer/layout и жизненный цикл коллекции; повреждённый файл заменяйте доверенной копией. В контексте условия «файл шрифта существует, но его не удалось открыть из-за отказа в доступе, нарушения совместного использования или аналогичной ошибки» для 0x88985004 оно должно устранить подтверждённую причину, а не скрыть исходный HRESULT.

Считайте исправление подтверждённым только после устойчивого повтора исходного сценария без результата 0x88985004 и без обхода штатных проверок.

Документация для результата 0x88985004: DirectWrite error codes · custom font collections.


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