毎日スケジュールに従って、あるサーバーから別のサーバーにバックアップをコピーする C# コンソール アプリを作成しました。これは、共有フォルダーにログインし、資格情報がキャッシュされている場合は完全に機能しますが、ソース サーバーの共有に資格情報が入力されていない場合、コードでエラーが発生します。私がする必要があるのは、アプリがソースの共有フォルダーへのログインを偽装することです。これにより、ファイルを取得して移動先に移動できます。
public static void CopyNewestBackup()
{
string sourcePath = @"\\source";
string targetPath = @"\\destination";
FileInfo newestFile = GetNewestFile();
string sourceFile = Path.Combine(sourcePath, newestFile.Name);
string destFile = Path.Combine(targetPath, newestFile.Name);
Console.Write("Copying " + newestFile.Name + " from " + sourcePath + " to " + destFile);
FileSystem.CopyFile(sourceFile, destFile, UIOption.AllDialogs);
//File.Copy(sourceFile, destFile, true);
}
サーバーへのログインを偽装してファイルを取得するにはどうすればよいですか?