Zum Inhalt springen

Fehlermeldung bei anderem Pfad


Empfohlene Beiträge

Geschrieben

Hallo Leute!

Ich wär sehr dankbar für eure Hilfe. Auch dieses mal wende ich mich an dieses Forum nachdem ich bereits in einem anderen Forum nach Hilfe gesucht habe, allerdings hab ich dort bisher keine Antwort bekommen. :(

Fehlermeldung bei anderem Pfad - Entwickler-Ecke

Ablauf des Programms

Einen Datenteil von einem lokalen Verzeichnis auf den FTP Server hochladen und andere Daten von dem FTP Server in ein lokales Verzeichnis kopieren. Anschließend die Quellverzeichnisse leeren. Beim nächsten Durchlauf (sollten aus versehen nochmal die selben Daten hochgeladen worden sein) werden diese ersetzt, andernfalls soll ausgegeben werden das keine Daten vorhanden sind. Nebenbei wird ein Protokoll geschrieben, da das Programm von alleine alle 15 min laufen soll.

Das Problem

Es tritt nur auf wenn ich das Programm schon einmal durchlaufen habe d.h. alle Daten im Quellverzeichnis wurden kopiert und anschließend gelöscht.

Schon einmal vielen Dank für eure Hilfe.


string[] files;

try

{

 //Verbinden

 Ftp m_ftp = new Ftp();

 m_ftp.Connect(Config.Default.FTPHost);

 m_ftp.Login(Config.Default.FTPUser, Config.Default.FTPPwd);


 //Kopieren der Daten

 m_ftp.GetFiles(vquellpfad + "*.*", vzielpfad, FtpBatchTransferOptions.Recursive,FtpActionOnExistingFiles.OverwriteAll);


 //gewünschter Pfad

 files = Directory.GetFiles(vquellpfad);

 //Folgende Fehlermeldung: Ein Teil des Pfades "C:\Users\s.mueller\...\bin\Debug\quelle\auftrag\" konnte nicht gefunden werden.


 //Eigentlicher Pfad, bei dem aber Daten übergeben werden, welche im Quellverzeichnis nicht mehr vorhanden sind

 //files = Directory.GetFiles(vzielpfad);


 if (files.Length > 0)

 {

  foreach (string s in files)

  {

   try

   {

    prot.writeProtokoll("Die Datei wurde erfolgreich heruntergeladen: " + Path.GetFileName(s));

    m_ftp.DeleteFile(vquellpfad + Path.GetFileName(s));

   }

   catch (IOException IOex)

   {

   prot.writeProtokoll("Fehler: " + IOex.ToString());

   }

  }

 }

 else

 {

 prot.writeProtokoll("Es wurden keine Dateien heruntergeladen.");

 }


 m_ftp.Disconnect();

 prot.writeProtokoll("Verbindung zum FTP-Server erfolgreich!");

 return true;

}

Geschrieben

@ Guybrush Threepwood: Fehlermeldung ist folgende (zumindest im Protokoll). Beim Debuggen gibt er mir direkt keine Fehlermeldung aus, aber ich weiß das der Fehler sich auf das "files = Directory.GetFiles(vquellpfad);" bezieht

Fehler beim Herunterladen der Datei! Rebex.Net.FtpException: deletion failed (550).

bei Rebex.Net.Ftp.cgrDQE(Int32 )

bei Rebex.Net.Ftp.CnNcvYZ(String )

bei Rebex.Net.Ftp.DeleteFile(String remotePath)

bei Runge.FTPnormal.getFileFromFTP(String vquellpfad, String vzielpfad, Int32 vrun) in C:\Users\s.mueller\Documents\Visual Studio 2010\Projects\...\FTPnormal.cs:Zeile 97

@Klotzkopp: Stimmt. Gut das du mich darauf hinweist. Ich weiß auch das ich das m_ftp davor setzen müsste, da mit dem m_ftp die Verbindung zum Server ja hergestellt bzw verbunden wird, allerdings verlangt der dann von mir 3 Argumente, wobei ich in dem Fall ja nur eins (und zwar den Quellpfad) angeben will. Warum ich 3 angeben muss bzw wo das festgelegt ist weiß ich nicht.

Also an für sich weiß ich jetzt wo der Fehler ist und wie ich ihn beheben kann auch und zwar indem ich "einfach" das m_ftp irgendwie mit in das "files = ... (vquellpfad)" einbaue nur da weiß ich halt nicht weiter.

Geschrieben

Falsche Fehlermeldung. Es ist nicht die Fehlermeldung

Fehler beim Herunterladen der Datei! Rebex.Net.FtpException: deletion failed (550).

bei Rebex.Net.Ftp.cgrDQE(Int32 )

bei Rebex.Net.Ftp.CnNcvYZ(String )

bei Rebex.Net.Ftp.DeleteFile(String remotePath)

bei Runge.FTPnormal.getFileFromFTP(String vquellpfad, String vzielpfad, Int32 vrun) in C:\Users\s.mueller\Documents\Visual Studio 2010\Projects\...\FTPnormal.cs:Zeile 97

sondern

System.IO.DirectoryNotFoundException: Ein Teil des Pfades "C:\Users\s.mueller\Documents\Visual Studio 2010\Projects\...\bin\Debug\quelle\auftrag\" konnte nicht gefunden werden.

bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)

bei System.IO.FileSystemEnumerableIterator`1.CommonInit()

bei System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler)

bei System.IO.Directory.GetFiles(String path, String searchPattern)

bei Runge.FTPnormal.getFileFromFTP(String vquellpfad, String vzielpfad, Int32 vrun) in C:\Users\s.mueller\Documents\Visual Studio 2010\Projects\...\FTPnormal.cs:Zeile 88.

Geschrieben
allerdings verlangt der dann von mir 3 Argumente, wobei ich in dem Fall ja nur eins (und zwar den Quellpfad) angeben will. Warum ich 3 angeben muss bzw wo das festgelegt ist weiß ich nicht.
Das solltest du aber. Du verwendest nämlich die GetFiles-Methode deiner FTP-Klasse bereits in deinem Code, mit 3 Argumenten. Ftp.GetFiles dient offensichtlich nicht dazu, eine Liste der Dateien anzufordern, sondern lädt Dateien herunter.

Wenn du wissen willst, wie du an eine Liste der Dateien auf dem FTP-Server kommst, musst du in die Dokumentation deiner FTP-Klasse schauen. Nach kurzem Überfliegen scheint mir GetList eine passende Methode zu sein.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...