Es soll aus einem Unterordner auf dem FTP Server müssen die LIste der Dateien ausgelesen werden und ggf. Heruntergeladen.
ftp://irgendwas/MyOrdner/MySubOrdner
Wenn ich es mit FtpWebRequest versuche:
url = ftpserver + @"/MyOrdner/MySubOrdner";
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(url);
request.Method = WebRequestMethods.Ftp.ListDirectory;
request.Timeout = timeout;
request.ReadWriteTimeout = timeout;
request.UsePassive = true;
request.UseBinary = true;
request.KeepAlive = false;
request.Credentials = new NetworkCredential(username, password);
FtpWebResponse response = request.GetResponse() as FtpWebResponse;
Stream responseStream = response.GetResponseStream();
Auszuführen, bekomme ich bei GetResponse folgende Fehlermeldung:> Fehlermeldung:
System.Web.Exception
Der Remoteserver hat einen Fehler zurückgegeben: (450) Datei nicht verfügbar (z.B. in Gebrauch).
Was mache ich falsch?
Mit FileZilla kann ich alles ansehen, mit dem wurde Ordner Struktur auch erstellt.
Wer es wissen will:
Problem gelöst:
es muss "/" hinter dem Ordner hinzugefügt werden, dann komm auch kein Fehler.
also
url = ftpserver + @"/MyOrdner/MySubOrdner/";
...zu spät gesehen. Bessere Lösung: anstatt am String herumzufummeln und dort zu prüfen, ob hinten ein Slash ist, und dann eventuell einen dranzuhängen, die zwei Dinge hier benutzen:
a) System.Uri
b) WebRequest.Create(Uri)
LaTino
"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)