私は正常に動作している次のコードを持っています。
public Foo GetConfiguration(string file)
{
lock (_lockObj)
{
Foo foo = new Foo ();
try
{
XmlSerializer serializer = new XmlSerializer(typeof (Foo));
using (Stream reader = new FileStream(file, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
foo = (Foo) serializer.Deserialize(reader);
}
}
catch (Exception ex)
{
Log.Error(string.Format("Failed to read foo '{0}'. Error: '{1}'", file, ex));
}
return foo;
}
}
}
関数の入力file
値が unc 共有フォルダーの場合、次の例外が発生します。
System.IO.IOException: Logon failure: unknown user name or bad password.
どうすれば克服できますか?
FileStream に資格情報を渡すにはどうすればよいですか?
ありがとう
編集: 1. このプログラムは、ローカル システム アカウントの Windows サービスでホストされます。
サービスはWin2008上にあります
サーバーで、資格情報マネージャーに資格情報を追加しました(自動ログオン用の資格情報を保存します)
Credential Manager に資格情報を入力した後、UNC 経由でターゲット パス (別のサーバー上) に到達できますが、C# 経由では動作しません。