Доступ к файлу запрещен, ошибка консольного приложения c #
-
20-08-2019 - |
Вопрос
Это действительно странная проблема безопасности консольного приложения на C # (3.0).
Приложение создает папку и копирует в нее кучу файлов, затем оно также генерирует несколько файлов и сохраняет их в той же папке.Файловые потоки всегда закрыты.Скопированные файлы выполняются с помощью File.Copy.Как только файлы будут там, я, похоже, не смогу получить к ним доступ снова - позже в коде, если я захочу удалить или открыть существующий файл, я получу сообщение об ошибке "Доступ запрещен", но я только что создал или скопировал файл туда, поэтому я знаю, что у меня есть разрешение!
Visual Studio 2008, Windows 7 (бета-версия) - пытался запустить от имени администратора, но это не помогло.Я также предоставил разрешения родительской папке, чтобы "Все" имели доступ на запись и находились в папке "Документы моего вошедшего в систему пользователя".
Спасибо!
Обновить:Я попробовал это на XP и получил тот же результат, так что это не Win 7 :)
Решение
Установлен ли для файлов атрибут "Только для чтения"?Попытка удалить файлы, доступные только для чтения, может привести к возникновению исключения "отказано в доступе".
Другие советы
Если вы выполняете все свои потоковые объявления в блоке using, вы должны быть гарантированы, что они не вызывают проблемы.