Ошибка при создании папки на удаленном сервере - PullRequest
4 голосов
/ 07 июля 2011

Привет, у меня написан код для записи файла на удаленном сервере в .net.Когда я сохраняю путь вывода как локальный диск - код работает нормально и создает папки и текстовые файлы.Но когда я указываю на удаленный сервер, я получаю сообщение об ошибке ниже:

System.UnauthorizedAccessException: Access to the path '\\ServerName\FolderTest\FolderTest1\AB.txt' is denied.
 at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
 at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)
 at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access)
 at ...

Если вам нужна дополнительная информация, дайте мне знать

Ответы [ 3 ]

1 голос
/ 07 июля 2011

В какой среде вы выполняете свой код? Winforms, веб-формы или выигрышные услуги?
Для всех этих случаев существуют различные способы решения этой проблемы:

  • WinForms - тогда ваш код по умолчанию выполняется под вашими учетными данными, поэтому ваша учетная запись должна иметь разрешения для папки creatinf на удаленном сервере.
  • WebForms - тогда ваш код выполняется под локальным пользователем IIS по умолчанию или под вашей учетной записью, если вы используете impersonation, поэтому у этой учетной записи должны быть разрешения для папки creatinf на удаленном сервере.
  • Службы Win - тогда ваш код выполняется либо в локальной службе, на локальном компьютере, в сетевой службе или для какого-либо пользователя этой службы ( для получения дополнительной информации ), поэтому для этой учетной записи должны быть разрешены папка creatinf на удаленном сервере.
0 голосов
/ 07 июля 2011

Код теперь работает правильно. Вопрос был в разрешении доступа. Учетные данные с моим кодом, записанным в папку, не были добавлены на вкладку безопасности папки. После добавления к нему. Это сработало. Спасибо, Джеймс Девил, @VMAtm и @Razvan Panda:)

0 голосов
/ 07 июля 2011

Возможно, вам нужно установить права доступа для нужного пользователя в папке, в которую вы хотите сохранить файл.Этот пост может иметь ответ для вас:

Ссылка - System.UnauthorizedAccessException

...