| Предыдущий | Следующий |
| ERROR_CANT_ACCESS_FILE | RPC_S_ENTRY_TYPE_MISMATCH |
ERROR_CANT_RESOLVE_FILENAME
Что означает ERROR_CANT_RESOLVE_FILENAME
ERROR_CANT_RESOLVE_FILENAME — Win32 error 1921 (0x781). Windows не смогла преобразовать переданное имя или путь в однозначную цель файловой системы. Это отличается от ситуации, когда файл уже найден, но доступ к нему запрещён.
На разрешение имени влияют текущий каталог, буквы подключённых дисков, UNC-поставщики, символические ссылки, точки подключения, reparse points, короткие имена и правила нормализации.
Типичные причины
- Относительный путь вычисляется в неожиданном текущем каталоге или в другом сеансе службы.
- Подключённый диск существует только в интерактивном сеансе другого пользователя.
- Символическая ссылка, DFS-ссылка, точка подключения или другой reparse target отсутствует либо повреждён.
- Путь содержит неподдерживаемый синтаксис, неполное UNC-имя или компонент, который не распознаётся установленными поставщиками.
Что зафиксировать
Сохраните исходный путь, признак относительного/абсолютного имени, текущий каталог, пользователя и сеанс процесса, раскрытые переменные окружения, сопоставления дисков, нормализованный полный путь, встреченные reparse tags и API, выполняющее разрешение.
Как исправлять
Преобразуйте относительный ввод в абсолютный путь по контролируемым правилам и проверяйте каждый компонент. Для служб по возможности используйте явный UNC-путь вместо пользовательской буквы диска. Не перебирайте наугад альтернативные пути: это способно привести программу к другому файлу вместо устранения причины.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.