#boost #rename
#boost #переименовать
Вопрос:
Я пытаюсь переименовать папку с помощью Boost C , но я получил исключение «Доступ запрещен». Я ищу решение, но я не могу его найти!
Я просто делаю простое «переименовать (исходный, целевой);» !!!
Есть ли у вас идеи?
Комментарии:
1. посмотрите на разрешения с обеих сторон и справочную страницу для переименования, чтобы узнать причины EACCESS.
2. Проверьте, содержит ли какое-либо приложение (или ваша программа) в данный момент рабочий каталог в этой папке. Это наиболее вероятная причина и, вероятно, вызывает ту же ошибку. Вы можете сделать это с помощью утилиты «handle» из sysinternals.com
Ответ №1:
Вы также получите это сообщение об ошибке, когда целевая папка уже существует.
Ответ №2:
Возможно, source
она заблокирована (например, открыта другим приложением) или у вас нет соответствующих разрешений на изменение файла.
Комментарии:
1. Спасибо, но я на Windows. Это папка, которую моя программа создала ранее! Как я могу тогда изменить эти разрешения? Кроме того, я попытался изменить разрешения в проводнике файлов, для каждого пользователя я установил «полный контроль», но ничего не изменилось, у меня все еще есть эта ошибка!!! Примечание: Я уверен, что нет никакой другой файловой операции, поэтому моя программа не блокирует!!
2. Я бы спросил о проблемах с правами доступа к файлам на SuperUser.com . Укажите операционную систему и то, что вы уже просмотрели и пробовали.
3. Но я не уверен, что это связано с разрешениями!! Я администратор своей системы … поэтому я изменил настройки этой папки, но я все еще получаю ту же ошибку!!!