| Предыдущий | Следующий |
| STG_E_INVALIDHEADER | STG_E_UNKNOWN |
STG_E_INVALIDNAME
Что означает STG_E_INVALIDNAME
STG_E_INVALIDNAME означает, что имя stream или storage недопустимо по правилам Structured Storage. Эти правила относятся к внутренним элементам compound file и не совпадают с обычными ограничениями имени файла в NTFS.
Что проверить
- Сохраните точное Unicode-имя до UI-нормализации, escaping и преобразования регистра.
- Проверьте длину и символы, запрещённые или зарезервированные спецификацией Structured Storage.
- Убедитесь, что producer не подставляет в имя внутреннего элемента полный файловый путь или пользовательскую строку без проверки.
Как исправить
Исправьте имя на стороне кода, создающего stream/storage, и сохраняйте однозначное соответствие с исходным объектом. Переименование внешнего backing file не меняет имя внутреннего элемента.
Как подтвердить исправление
Compound file открывается другим совместимым Structured Storage reader, а созданный элемент доступен под тем же допустимым Unicode-именем.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.