1

リモートサーバーにファイルがあり、このファイルを読みたいです。ファイルの場所は次のとおりです。

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

このコードは確かにエラーをスローします:ログオンの失敗:不明なユーザー名または不正なパスワード。

クレデンシャルを渡すにはどうすればよいですか?

開始/実行してこのパスを入力する場合は、管理者とパスワード123などの資格情報を提供する必要があります。

Asp.net、c#3.5を使用しています

何か案は

4

3 に答える 3

2

偽装を使用する必要があります。つまり、 asp.net user ではなく、共有フォルダーにアクセスできるユーザーでコードを実行します。

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

あなたには2つの方法があります: -コード付き -構成付き

于 2010-03-10T15:05:29.797 に答える
0

アプリケーションは、ファイルの読み込み操作のために、UNC パスへのアクセス権を持つユーザーとして実行するか、そのようなアクセス許可を持つユーザーを偽装する必要があります。

于 2010-03-10T15:06:30.280 に答える
0

ファイルにアクセスする前に、共有で事前認証を受ける必要があります。UNCパスを渡すだけでできることではありません。

net useシェルを介してプログラム的にコマンドを実行することを検討してください。それが私がこれを行うために見つけることができる唯一の方法です。

于 2010-03-10T15:06:55.370 に答える