FtpWebResponse GetResponse()给出“远程服务器返回错误:(550)文件不可用(例如,找不到文件,没有访问权限)。”

时间:2013-01-12 11:55:34

标签: .net-4.0 ftpwebrequest

我有一个带有图片库的Win Form,它使用FtpWebRequest上传图片,但在更改为.Net 4.0后,我突然得到550错误。上传文件和列出目录时都会发生错误。 从我的示例代码中可以看出,我已经实现了http://support.microsoft.com/kb/2134299的MS解决方案。

我检查了用户名,密码和路径 - 一切正确。

但是,我收到了一个错误。我已经为每个解决方案浏览了Google而没有任何回应。

SetMethodRequiredCWD();

FtpWebRequest reqFTP = (FtpWebRequest)WebRequest.Create(new Uri(pPath));
reqFTP.Credentials = new NetworkCredential(Properties.Settings.Default.FTPUser, Properties.Settings.Default.FTPPass);
reqFTP.Method = WebRequestMethods.Ftp.ListDirectory;
reqFTP.KeepAlive = false;

FtpWebResponse respFTP = (FtpWebResponse)reqFTP.GetResponse();

Stream respStreamFTP = respFTP.GetResponseStream();
StreamReader streamReader = new StreamReader(respStreamFTP, Encoding.Default);

2 个答案:

答案 0 :(得分:3)

我建议的一种方法是使用例如监视ftp-client和-server之间的请求/响应交换。提琴手。

首先,通过手动使用Filezilla等第三方客户端上传文件来记录错误未显示的会话。然后,将您的程序作为客户端记录另一个会话。比较交换的消息可以产生一些错误的洞察力。

答案 1 :(得分:2)