C#试图登录Ftp服务器时,报错“远程服务器返回错误(530)未登录”。
这是一个什么原因引起的呢?
-
private void ConnectFTP()
-
{
-
this.ServerUriStr = this.textBox1.Text;
-
string UserNameStr = this.textBox2.Text;
-
string PasswordStr = this.maskedTextBox1.Text;
-
this.ClientUserName = "root";
-
this.ClientUserPassword = "";
-
/* 使用user和passwd连接ftp服务器 */
-
this.ServerUri = new Uri(ServerUriStr);
-
this.FtpMainControl = (FtpWebRequest)WebRequest.Create(this.ServerUri);
-
this.FtpMainControl.Credentials = new NetworkCredential(this.ClientUserName, this.ClientUserPassword);
-
this.FtpMainControl.KeepAlive = true;
-
/* 试图从服务器取些文件目录列表下来 */
-
this.FtpMainControl.Method = WebRequestMethods.Ftp.ListDirectory;
-
WebResponse FtpResponce = this.FtpMainControl.GetResponse();
-
StreamReader ListReader = new StreamReader(FtpResponce.GetResponseStream());
-
}
而将上面的一句:
-
this.ClientUserName = "root";
改为
-
this.ClientUserName = "anonymous";
这个问题顺利解决了。说明这是一个没有登录成功就获取FTP服务器上的目录而引发的一个异常。
使用root通过命令行登录来验证root+passwd(空)是无法成功登录ftp的
阅读(15380) | 评论(0) | 转发(0) |