C# 捕获FTP错误消息

C# 捕获FTP错误消息,c#,ftpwebrequest,C#,Ftpwebrequest,我正在使用FTPWebRequest和FTPWebResponse连接到FTP服务器。此FTP服务器检查客户端登录尝试失败的次数,如果在指定时间段内登录尝试失败的次数过多,则会临时禁止客户端。对于最初失败的登录尝试,以及被禁止后的任何尝试,我得到 “远程服务器返回错误:(530)未登录。” 如果我在被禁止后尝试手动(即从DOS提示符)连接到FTP服务器,我会 c:\> ftp a.b.c.d Connected to a.b.c.d. 530 Host w.x.y.z has been t

我正在使用FTPWebRequest和FTPWebResponse连接到FTP服务器。此FTP服务器检查客户端登录尝试失败的次数,如果在指定时间段内登录尝试失败的次数过多,则会临时禁止客户端。对于最初失败的登录尝试,以及被禁止后的任何尝试,我得到

“远程服务器返回错误:(530)未登录。”

如果我在被禁止后尝试手动(即从DOS提示符)连接到FTP服务器,我会

c:\> ftp a.b.c.d
Connected to a.b.c.d.
530 Host w.x.y.z has been temporarily banned from the FTP server.
Connection closed by remote host.
w、 x.y.z是本地系统的IP地址

有没有什么方法可以捕获消息的文本

“530主机w.x.y.z已被FTP服务器暂时禁止。”


我需要能够区分常规失败的登录尝试(“未登录”)和被禁止的登录尝试,以及捕获和检查错误消息的唯一方法。

幸运的是,调用
GetResponse
时抛出的
WebException
具有,这正是你想要的:

try
{
    FtpWebResponse response = (FtpWebResponse) request.GetResponse();
}
catch (WebException ex)
{
    if (ex.Response != null)
        Console.WriteLine(((FtpWebResponse)ex.Response).StatusDescription);
}

如果我有代码,那么我就知道怎么做了…发布你的代码,说明你是如何执行FTPWebRequest和响应的!!它不相关-代码可以工作,但它会在异常后检查状态代码-在上面记录的情况下,返回相同的状态代码。我需要看到这条信息——如果我知道怎么做,我会回答我自己的问题……你在这里真的帮不了你自己!!如果有人想帮助你,请你做点什么,要么就去做,要么就别指望别人的帮助。好吧,我必须对代码进行大量编辑——公司机密——才能在这里放一段代码,我可以做到。我只是不知道我的代码将如何帮助任何人回答这个问题。我本以为这个问题相当简单——我该怎么做不需要参考我的代码,不客气。我想我们是来互相帮助的:)