C#Ftp错误(552)超出存储分配

时间:2016-10-07 14:18:09

标签: c# .net ftp

我有这个代码用于在我的FTP服务器上传图像:

FtpWebRequest ftp = (FtpWebRequest)FtpWebRequest.Create("ftp://domain.com/" + "393174" + ".jpg");
                ftp.Credentials = new NetworkCredential("user@domain.com", "password");

                ftp.KeepAlive = true;
                ftp.UseBinary = true;
                ftp.Method = WebRequestMethods.Ftp.UploadFile;

                FileStream fs = File.OpenRead(@"location" + "393174" + ".jpg");
                byte[] buffer = new byte[fs.Length];
                fs.Read(buffer, 0, buffer.Length);
                fs.Close();

                Stream ftpstream = ftp.GetRequestStream();
                ftpstream.Write(buffer, 0, buffer.Length);
                ftpstream.Close();

由于某种原因,我得到错误(552)超出存储分配:System.Net.WebException。

我尝试在不同的位置使用新的ftp帐户,但同样的错误。 我检查了FTP配额是无限制的。

  

远程服务器返回错误:(552)超出存储分配   (对于当前目录或数据集)。在   System.Net.FtpWebRequest.SyncRequestCallback(Object obj)at   System.Net.FtpWebRequest.RequestCallback(Object obj)at   System.Net.CommandStream.Dispose(布尔处理)at   System.IO.Stream.Dispose()at的System.IO.Stream.Close()   System.Net.ConnectionPool.Destroy(PooledStream pooledStream)at   System.Net.ConnectionPool.PutConnection(PooledStream pooledStream,   Object owningObject,Int32 creationTimeout,Boolean canReuse)at   System.Net.FtpWebRequest.FinishRequestStage(RequestStage阶段)at   System.Net.FtpWebRequest.GetRequestStream()at   WindowsFormsApplication1.Form1.button1_Click(Object sender,EventArgs   e)在C:\ Users \ Demir \ AppData \ Local \ Temporary中   Projects \ WindowsFormsApplication1 \ Form1.cs:第38行

1 个答案:

答案 0 :(得分:2)

磁盘空间不够,这就是错误的意思。

Source

  

552错误代码直接来自远程FTP服务器。   远程FTP上没有足够的可用磁盘空间   服务器。导致此错误的最常见原因是磁盘有限   为您的个人FTP帐户分配的空间已在使用中。

Another article

  

可以响应任何需要的命令发送552回复代码   服务器在本地存储接收的信息。这是一个永久性的   否定回复,这意味着不鼓励客户发送   再次命令,因为服务器将使用相同的回复代码进行响应。   它通常表示登录用户已超出存储空间   管理员分配给其用户帐户的空间。