2010-03-10 3 views
1

У меня есть файл на удаленном сервере, и я хочу прочитать этот файл. позволяет сказать, что расположение файлов:Прочитать файл на удаленном сервере

string filePath = @"\\192.168.101.15\c$\program files\xxx\test.xml"; 
XmlDocument xmlDoc = new XmlDocument(); 
xmlDoc.Load(filePath); 

Этот код точно бросает ошибку: Ошибка входа в систему: неизвестное имя пользователя или пароль.

Как передать свои полномочия?

если я иду начать/запустить и поставить этот путь, необходимо предоставить учетные данные позволяют говорить и пароль администратора 123.

Im используя Asp.net, C# 3.5

Любые идеи

+0

Посмотрите на «Лучшую практику для« использования сети »на C# - http://stackoverflow.com/questions/8919/looking-for-best-practice-for-doing-a-net-use -в-с –

ответ

2

You должны использовать олицетворение, то есть выполнить код с пользователем, который имеет доступ ко общей папке вместо пользователя asp.net:

http://msdn.microsoft.com/en-us/library/aa292118%28VS.71%29.aspx

У вас есть два способа: -с код конфигурации -с

+0

я добавил к моей web.config <идентичность IMPERSONATE = "истинному" имени пользователя = "домен \ Admin" пароля = "123" /> Im имеющему следующему сообщения об ошибке ошибке конфигурации Описания: произошла ошибка при обработке файла конфигурации, необходимого для обслуживания этого запроса. Ознакомьтесь с конкретными сведениями об ошибках ниже и соответствующим образом измените свой файл конфигурации. Сообщение об ошибке Parser: не удалось создать токен пользователя Windows из учетных данных, указанных в файле конфигурации. Ошибка в операционной системе «Ошибка входа в систему: неизвестное имя пользователя или неверный пароль. – user290611

0

Ваше приложение должно будет работать как пользователь, который имеет доступ к пути UNC, либо выдавать пользователю с такими правами, для операции загрузки файла.

0

Прежде чем вы сможете получить доступ к файлам, вам необходимо пройти предварительную проверку подлинности. Это не то, что вы можете сделать, просто пройдя путь UNC.

Возможно, вы запросите выполнение команды net use через оболочку программно. Это единственный способ найти это.

+0

может у меня ссылка или пример, как это сделать Спасибо в расширенном – user290611

Смежные вопросы