Laden...

[erledigt] FTP File Upload Error 550

Erstellt von Crone vor 9 Jahren Letzter Beitrag vor 9 Jahren 5.246 Views
C
Crone Themenstarter:in
168 Beiträge seit 2010
vor 9 Jahren
[erledigt] FTP File Upload Error 550

Hallo zusammen,

ich habe drei Dateien die ich mit einen kleinen FTP Programm hochladen bei zweien funktioniert es super nur bei der dritten nicht.

leider konnte ich nach stunden langen debuggen und google noch immer keine Lösung finden.

Jedes mal wenn ich versuche die Datei zu Uploaden bekommen ich folgenden Fehler:

Der Remoteserver hat einen Fehler zurückgegeben: (550) Datei nicht verfügbar (z.B. nicht gefunden oder kein Zugriff

Ich hab via FileZilla den Username und das Passwort ausprobiert und auch versucht einen Datei Manuell hoch und runterzuladen. Alles lief ohne Probleme.

Versuche ich eine Datei mit mein Programm herunterzuladen klappt das nicht.

destPath enthält: "ftp://192.168.100.2:21/subdir/test.txt"

                Uri uri = new Uri(destPath);
                FtpWebRequest fwr = (FtpWebRequest)FtpWebRequest.Create(uri);
                fwr.Method = WebRequestMethods.Ftp.UploadFile;
                fwr.Credentials = new NetworkCredential(con.Username, con.Password);
                fwr.UseBinary = true;
                fwr.UsePassive = false;

                FileStream fs = new FileStream(con.LocalPath + @"\" + (realFileName.Length > 0 ? realFileName : con.SourceFileName), FileMode.Open);
                byte[] fileContents = new byte[fs.Length];
                fs.Read(fileContents, 0, Convert.ToInt32(fs.Length));
                fs.Flush();
                fs.Close();

                Stream requestStream = fwr.GetRequestStream();
                requestStream.Write(fileContents, 0, fileContents.Length);
                requestStream.Close();


                response = fwr.GetResponse();
                status = ((FtpWebResponse)response).StatusDescription;
                response.Close();
                return status;

Danke für eure Hilfe.

Gruß Crone

Real programmers don't comment their code - it was hard to write, it should be hard to understand.

C
Crone Themenstarter:in
168 Beiträge seit 2010
vor 9 Jahren

So ich hab den Fehler endlich gefunden.

Der FTP Path ("ftp://192.168.100.2:21/subdir/test.txt") enthielt als Verzeichniss "subdir" dieses war aber schon das Standardverzeichnis des verwendeten Benutzers.

Das subdir musste also einfach aus den FTP-Path gelöscht werden.

Warum dies mit den Explorer und anderen FTP-Programmen problemlos funktioniert ist mir zwar noch ein Rätsel, da der Fehler vom FTP-Server zurück gegeben wurde.

Gruß
Crone

Real programmers don't comment their code - it was hard to write, it should be hard to understand.

Z
322 Beiträge seit 2006
vor 9 Jahren

Habe auch ein ähnliches Problem....

Login: ftp://192.168.100.2:21/sampleDir

Auf Windows 8 und einem Windows Server 2008 Datacenter funktioniert das Verschieben via FTP (ftp://192.168.100.2:21/sampleDir/error/test.csv) fehlerfrei. Beim Kunden ebenfalls Windows Server 2008 Standard funktioniert es nicht, nur erst nach ich das "sampleDir" Verzeichnis weglasse, also "/error/test.csv/" anstatt "/sampleDir/error/test.csv"...

Mein Projekt ist unter VS2013, mit Framework 4.0 erstellt.