我做的程序如下:(为什么我往FTP上传文件时,出来错误是在WebClient请求期间发生异常,连下载也是如此,但是我下载地址如果为http://www.163.com就可以,FTP:// 就不行,哪位高手教我下吧,赶工急用)

private void button1_Click(object sender, System.EventArgs e)
{ button2.Enabled=true;
saveFileDialog1.Filter="XLS(*.xls)|*.xls|Html(*.html)|*.html|All Files (*.*)|*.*";
saveFileDialog1.Title="另存为";
if(this.saveFileDialog1.ShowDialog()==DialogResult.OK)
{
this.textBox1.Text=this.saveFileDialog1.FileName;
} } private void button2_Click(object sender, System.EventArgs e)
{
if(this.textBox1.Text=="" | this.textBox2.Text=="")
return;
WebClient MyClient=new WebClient();
string URL=this.textBox2.Text;
string SaveFileName=this.textBox1.Text;
try
{
MyClient.DownloadFile(URL,SaveFileName);
MessageBox.Show("文件下载成功!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
catch(Exception Err)
{
  MessageBox.Show("文件下载失败!错误是:"+Err.Message,"信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
} private void textBox3_TextChanged(object sender, System.EventArgs e)
{

} private void button3_Click(object sender, System.EventArgs e)
{
button4.Enabled=true;
openFileDialog1.Filter="XLS(*.xls)|*.xls|Html(*.html)|*.html|All Files (*.*)|*.*";
openFileDialog1.Title="打开";
if(this.openFileDialog1.ShowDialog()==DialogResult.OK)
{
this.textBox3.Text=this.openFileDialog1.FileName;
}    
} private void button4_Click(object sender, System.EventArgs e)
{
if(this.textBox3.Text=="" | this.textBox4.Text=="")
return;
WebClient MyClient=new WebClient();

string URL=this.textBox4.Text;
string FileName=this.textBox3.Text;
byte[] MyResponseArray=null;
try
{
MyResponseArray=MyClient.UploadFile(URL,FileName);
MessageBox.Show("文件上载成功!","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
catch(Exception Err)
{
MessageBox.Show("文件上载失败!错误是:"+Err.Message,"信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information); }
finally
{
if( MyResponseArray != null && MyResponseArray.Length > 0 ) 
 MessageBox.Show("\n 服务器的回复:\n"+System.Text.Encoding.ASCII.GetString(MyResponseArray));
}
}