/**********************************************
* *函 数 名:FtpDownLoad
* *功能描述:Ftp下载
* *输入参数:
* *输出参数:是否成功
* *返 回 值:Bool型;
* *作 者:zifan
* *日 期:2008-7-8
**********************************************/
public bool FtpDownLoad(ProgressBar pBar, string downPath, string ipPath, string fileName)
{
try
{
pBar.Visible = true;
pBar.Maximum = 1000;
pBar.Value = 0;
pBar.Value++;
FtpWebRequest MyRequest = (FtpWebRequest)WebRequest.Create(ipPath+fileName);
MyRequest.Credentials = new NetworkCredential("updating", "51087123");
using (FtpWebResponse MyResponse = (FtpWebResponse)MyRequest.GetResponse())
{
Stream MyData = MyResponse.GetResponseStream();
string MySavePath = downPath + fileName;
if (File.Exists(MySavePath))
File.Delete(MySavePath);
byte[] MyBuffer = new byte[4096];
using (FileStream MyStream = new FileStream(MySavePath, FileMode.CreateNew))
{
int Count = 0;
do
{
Count = MyData.Read(MyBuffer, 0, MyBuffer.Length);
if (Count > 0)
{
MyStream.Write(MyBuffer, 0, Count);
}
if (pBar.Value == 1000)
pBar.Value = 0;
pBar.Value++;
}
while (Count > 0);
}
}
pBar.Visible = false;
return true;
}
catch (Exception ex)
{
UserLog.WriteErrorLog("FtpDownLoad:"+ex.Message);
return false;
}
}