2010-03-10 17 views
1

J'ai un fichier sur un serveur distant et je veux lire ce fichier. permet de dire l'emplacement des fichiers est:Lire le fichier sur un serveur distant

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

Ce code est sûr de lancer une erreur: échec de connexion: nom d'utilisateur inconnu ou mot de passe incorrect.

Comment puis-je transmettre mes informations d'identification?

si je vais commencer/courir et mettre ce chemin, je dois fournir des informations permet de dire l'administrateur et le mot de passe 123.

Im en utilisant Asp.net, C# 3.5

Toutes les idées

+0

Regardez 'À la recherche des meilleures pratiques pour faire un' Net Use 'en C#' - http://stackoverflow.com/questions/8919/looking-for-best-practice-for-doing-a-net-use -en-c –

Répondre

2

Vous doivent utiliser l'usurpation d'identité, à savoir exécuter votre code avec un utilisateur qui a accès au dossier partagé au lieu de l'utilisateur asp.net:

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

Vous avez deux voies: code -avec -avec configuration

+0

j'ai ajouté à mon web.config Im ayant l'erreur suivante erreur de configuration description: une erreur s'est produite lors du traitement d'un fichier de configuration requis pour traiter cette demande. Veuillez consulter les détails d'erreur spécifiques ci-dessous et modifier votre fichier de configuration de manière appropriée. Message d'erreur de l'analyseur: Impossible de créer le jeton d'utilisateur Windows à partir des informations d'identification spécifiées dans le fichier de configuration. Erreur de l'erreur de connexion du système d'exploitation: nom d'utilisateur inconnu ou mot de passe incorrect. – user290611

0

Votre application devra fonctionner en tant qu'utilisateur qui a accès au chemin UNC, ou bien usurper l'identité d'un utilisateur avec ces autorisations, pour l'opération de chargement de fichier.

0

Vous devez être pré-authentifié sur le partage avant de pouvoir accéder aux fichiers. Ce n'est pas quelque chose que vous pouvez faire en passant un chemin UNC.

Vous pouvez envisager d'exécuter une commande net use via le shell par programmation. C'est la seule façon que je peux trouver pour faire ça.

+0

pouvez-vous me donner un lien ou un exemple comment faire cela Merci à l'avance – user290611

Questions connexes