分類:[C#]
Windows7 32bit Pro VisualStudio2008 C#
string YN;
Console.Write("保存ドライブ又はパスを入力 ");
string B_Drive = Console.ReadLine();
Console.Write("バックアップするドライブ名又はパスを入力 ");
string S_Drive = Console.ReadLine();
while (true)
{
Console.Write(S_Drive + " を " + B_Drive + " にバックアップします。(Y/N)?");
YN = Console.ReadLine();
if (YN == "Y" || YN == "y" || YN == "N" || YN == "n") { break; }
}
if (YN == "N" || YN == "n") { return; }
System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo();
psi.FileName = System.Environment.GetEnvironmentVariable("ComSpec");
psi.CreateNoWindow = true;
psi.Arguments = @"/c robocopy " + S_Drive + " " + B_Drive + " /mir";
System.Diagnostics.Process p = System.Diagnostics.Process.Start(psi);
p.WaitForExit();
というように簡単なプログラムでrobocopyを実行しているのですが、1回目の実行ではB_Driveに指定したフォルダーは見えるのですが、2回目以降同じフォルダを指定すると、フォルダーが見えなくなります。 フォルダーオプションで保護されたオペレーティングシステムファイルを表示しないのチェックをはずすと見えてきます。フォルダーがオペレーティングシステムの属性になってしまうようです。これを防ぐにはどうしたらいいでしょう?ご存知の方教えてください。よろしくお願いいたします。
|