這台FTP有個問題,就是刪除 FTP 大量檔案時會報錯
不管是用Windows檔案總管FTP連線刪除、或用.NET刪除,都有這問題
這邊要問.NET(WebForm)的問題
因 .NET刪除,會寫LOG到DB
但cmd.exe就算報錯 或 卡住沒跑完
FTP指令一樣會結束
所以LOG會一樣照寫,這邊想詢問
有沒有辦法知道FTP其實檔案沒刪除
protected void Delete_Click(object sender, EventArgs e)
{
 ...
 FtpDel(Parameters_File[i].ToString());
 ...
 string sqlStr = @"INSERT INTO DelFTP_Log
 ...
}
protected void FtpDel(string FileName)
{
     Process p = new Process();
     p.StartInfo.FileName = "cmd.exe";
     p.StartInfo.UseShellExecute = false;
     p.StartInfo.RedirectStandardInput = true;
     p.StartInfo.RedirectStandardOutput = true;
     p.StartInfo.RedirectStandardError = true;
     p.Start();
     p.StandardInput.WriteLine("ftp");
     p.StandardInput.WriteLine("open " + FTP_IP + " " + FTP_Port);
     p.StandardInput.WriteLine(FTP_UserName);
     p.StandardInput.WriteLine(FTP_Password);
     p.StandardInput.WriteLine("delete " + FileName);
     p.StandardInput.WriteLine("bye");
     p.StandardInput.WriteLine("exit");
     p.WaitForExit();
     p.Close();
}