Hallo erstmal
Also ich habe folgendes Problem:
Ich will mit NMFTP prüfen was sich in einem Verzeichnis auf einem FTP befindet.
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| //NMFTP setzen Form1.NMFTP1.Host := ip; Form1.NMFTP1.UserID := 'anonymous'; Form1.NMFTP1.Password := 'anon@anon.net'; try Form1.Label10.Caption := 'Status: Verbinde'; Form1.NMFTP1.Connect; Form1.Label10.Caption := 'Status: Verbindung hergestellt!'; Form1.NMFTP1.ChangeDir(pfad); Form1.Label10.Caption := 'Status: Verzeichniswechsel'; Form1.NMFTP1.List; Form1.Label10.Caption := 'Status: Liste der Dateien holen'; Form1.NMFTP1.Disconnect; Form1.Label10.Caption := 'Status: Check Complete!'; Form1.NMFTP1.Free; except MessageBox(0, 'Fehler, keine Verbindung zum FTP oder anderer Fehler, FTP bitte manuell prüfen!', 'Fehler', mb_IconError); End; |
in der Methode OnList von NMFTP hab ich das:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| rocedure TForm1.NMFTP1ListItem(Listing: String); var FileName, date, typ, flags, size : string; i : integer; begin FileName := FileName + Copy(Listing, 40, Length(Listing)-39); size := Size + Copy(Listing, 19, 21); FlatListBox1.Items.Add(FileName); end; |
Also nach meinem Verständnis, sollte er die Dateien listen, was auch wunderbar klappt und dann hiermit
Quelltext
1: 2: 3:
| Form1.NMFTP1.Disconnect; Form1.Label10.Caption := 'Status: Check Complete!'; Form1.NMFTP1.Free; |
...die Verbindung beenden.
Jedoch klappt das meist (ja, manchmal klappt es :/) nicht. Er listet die Dateien auf und bleibt dann stehen (Prozessorauslastung 100 %) und das Programm lässt sich nicht mehr beenden (ausser mit Taskmanager).
Also es sieht so aus als ob er irgendwo KURZ nach dem listen hängenbleubtm denn
Quelltext
1:
| Form1.Label10.Caption := 'Status: Verzeichniswechsel'; |
...ist das letzte was man sieht, und da er dann die Dateien erfolgreich auflistet, es aber trotzdem nicht weitergeht denk' ich mal es liegt daran, aber wie kann ich das beheben bzw. woran liegt das?
Ich würde mich über Lösungsvorschläge sehr freuen
Mfg
Jetro