Autor Beitrag
colaka
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 200
Erhaltene Danke: 4

Win XP, W7
Delphi 2005 Prof.
BeitragVerfasst: So 22.08.10 08:49 
Hallo,

ich lade von meinen Lieferanten jeden Tag die aktuellen Preis- und Verfügbarkeitslisten per FTP in meine WaWi. Bei einem Lieferanten muß ich dazu ein Skript auf dem Server aufrufen, das die heruntzerzuladende Datei erst erzeugt. Bis die Datei auf dem Server erstellt ist, vergehen ungefähr 1 bis 2 Minuten bis der Download beginnen kann. Während dieser Zeit scheint mein Programm tot zu sein. Damit während dieser Wartezeit niemand mein Programm vorzeitig per Taskmanager beendet, habe ich eine timergesteuerte Laufschrift eingebaut. Doch die bleibt genau während der Skripterstellung einfach stehen. Jetzt habe ich ein animiertes Gif erstellt, doch auch das bleibt genau an dem Punkt, wo ich es brauche, ebenfalls stehen.

Kann mir hier jemand sagen, was ich tun könnte, um dem Benutzer zu signalisieren, daß das Programm noch arbeitet?

Danke Ebi
D.Elphi
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 128
Erhaltene Danke: 10

Windows 10 Edu x64
Tokyo Starter, BlueJ
BeitragVerfasst: So 22.08.10 10:15 
Hallo colaka,
in dem Moment, wo der Downloadvorgang startet, kann man ja z.B eine MessageBox anzeigen lassen, welche z.B anzeigt: Die Listen werden erstellt und heruntergeladen. Bitte beenden Sie nicht das Programm. Dieser Vorgang kann 1-2 Minuten in Anspruch nehmen. Natürlich ist das nur ein Vorschlag.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
Application.MessageBox ('Die Listen werden erstellt und heruntergeladen.' 
        + ' Bitte beenden Sie nicht das Programm. ' 
        + 'Dieser Vorgang kann 1-2 Minuten in Anspruch nehmen.'
        'Wartezeit-Hinweis'0+32);


PS: Mit dem animierten GIF: Ich habe auch ein Programm, wo das irgendwie nicht klappen will :(



Moderiert von user profile iconGausi: Zeilenumbruch eingefügt.
colaka Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 200
Erhaltene Danke: 4

Win XP, W7
Delphi 2005 Prof.
BeitragVerfasst: So 22.08.10 10:56 
Hallo,

vielen Dank für Deine Antwort. Das wäre natürlich eine Lösung, aber ein animiertes Gif wäre halt viel schöner. Ich habe so ein Problem nämlich auch noch bei SQL-Abfragen. Meine Artikeltabelle umfaßt inzwischen über 160.000 Artikel, da dauern manche SQL-Abfragen auch so ein paar Sekunden.

Vielleicht gibt es doch eine Möglichkeit, das animierte Gif weiterlaufen zu lassen.

Danke Ebi
Tankard
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Administrator
Beiträge: 217
Erhaltene Danke: 96



BeitragVerfasst: So 22.08.10 12:37 
das problem ist das die nachrichten der application nicht mehr ausgefuehrt werden, wenn du in deiner erstellungsschleife haengst.

einweder in einen thread auslagern und per call back die application informieren das wir fertig sind (bessere alternative)

oder quick and dirty einfach in der schleife ab und zu mal application.processmessages aufrufen.

gruss
tankard

ps: gleiches problem wie in dem thema progressbar laufen lassen, während ein prozess läuft?

man sollte mal dazu ein tutorial schreiben.