Ich war lange nicht im Forum aktiv. Jetzt brauche ich einen kurzen Tip.
Also folgendes Problem:
Ich habe ein ListIconGadget, das eine Spalte für Dateinamen und zwei Ergebnis Spalten besitzt.
In einer Schleife werden die Dateinamen abgearbeitet und auf meinen FTP-Server geschrieben [funktioniert prima, soweit]. Innerhalb der Schleife soll das Bearbeitungsergebnis und danach der erfolgreiche oder fehlgeschlagene FTP-Transfer in die zugehörige Spalte geschrieben werden [mit SetGadgetItemText]. Der FTP-Transfer erfolgt asynchron. Mein Problem: Die Anzeige der in das ListIconGadget geschreibenen Ergebnisse erfolgt erst nach Schließen der FTP-Verbindung. Eine parallele Ausgabe z.B. des Dateinamens in der Statuszeile vor dem Transfer wird sofort angezeigt.
Hier der Code-Abschnitt [gLIC_FileList ist das ListIconGadget]
Code: Alles auswählen
StatusBarText(#STB_Main, 0, " FTP-Verbindung vorbereiten ...")
ftpNo = OpenFTP(#PB_Any, FTP_Server$, FTP_User$, FTP_Pwd$)
Debug ftpNo
If ftpNo
Debug "\rai"
SetFTPDirectory(ftpNo, "rai")
Debug "\" +LastFirma$ +"_database"
SetFTPDirectory(ftpNo, LastFirma$ +"_database")
For i = 1 To CountGadgetItems(gLIC_FileList)
tmpFilename$ = DB_Path$ +GetGadgetItemText(gLIC_FileList, i-1, 0)
StatusBarText(#STB_Main, 0, " Verschlüsseln und FTP (" +tmpFilename$ +")")
If FileSize(tmpFilename$)
If AES_Encrypt (tmpFilename$)
SetGadgetItemText(gLIC_FileList, i-1, #TXT_OK, 2)
Else
SetGadgetItemText(gLIC_FileList, i-1, #TXT_Err, 2)
EndIf
EndIf
InvalidateRect_(GadgetID(gLIC_FileList), 0, #True)
Result = SendFTPFile(ftpNo, tmpFilename$ +".aes", GetGadgetItemText(gLIC_FileList, i-1, 0) +".aes", #True)
While FTPProgress(ftpNo) <> #PB_FTP_Finished
If FTPProgress(ftpNo) <> #PB_FTP_Error
:
Else
AbortFTPFile(ftpNo)
SetGadgetItemText(gLIC_FileList, i-1, #TXT_Err, 3)
Break
EndIf
;Delay(100)
Wend
If FTPProgress(ftpNo) = #PB_FTP_Finished
SetGadgetItemText(gLIC_FileList, i-1, #TXT_OK, 3)
EndIf
Next
CloseFTP(ftpNo)
StatusBarText(#STB_Main, 0, " FTP-Verbindung beendet")
EndIf
Danke schon 'mal im voraus.
Mr.X