Некоторые предложения:
- Нет разрешения на запись (получите разрешение через вкладку Безопасность в окне свойств файла; вы должны быть владельцем файла или администратором)
- Файл заблокирован (закройте любую программу, в которой файл может быть открыт, затем перезагрузите компьютер, если это не поможет)
- Для файла установлен атрибут DOS только для чтения (снимите его с окна свойств файла или с помощью
attrib -r
; вы должны быть владельцем файла или администратором)
Редактировать 1: только второй элемент (файл заблокирован) имеет возможное решение, которое все пользователи, вероятно, смогут обойтись без помощи. Для первого и третьего вы, вероятно, захотите предоставить руководство (и надеюсь, что файл не был сделан только для чтения намеренно!).
Редактировать 2: Технически, пользователю нужны права на запись и выполнение (chdir) для всех каталогов вплоть до корневого каталога. Windows может пропустить некоторые из рекурсивных проверок дерева в качестве оптимизации производительности, но вы не должны полагаться на это, потому что администраторы могут навязывать эти так называемые «обходные проверки» для определенных пользователей.
Редактировать 3: @RobM: Да, вы должны убедиться, что нет очевидных причин, по которым у пользователя не должно быть разрешений, которые ему нужны, но не имеют. Я упомянул об этом менее прямым способом в моем первом редактировании. Однако в некоторых случаях пользователи должны иметь разрешение на запись в файл, но не из-за повреждения файловой системы, неправильной работы программы или из-за ошибки с их стороны.