Einzelnen Beitrag anzeigen

Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#1

Ist mein Callback von idhttp zu kompliziert aufgebaut?

  Alt 2. Feb 2009, 16:15
Hallo Delphi-Freunde!

Ich habe eine Hauptanwendung mit geladenen PlugIns (DLL-Forms). Von der einen DLL-Form starte ich einen Thread, der nach Updates sucht und diese auch läd. Klappt wunderbar. Das Downloaden geschieht via idHTTP. Nun fange ich innerhalb des Threads die OnWork etc ab und richtie eigene Methoden ein, um den Status anzuzeigen.

Ich leite also von unterster Ebene in die höchte (www-Komponente -> Thread -> TUpdater-Klasse über Property zu MainApp) in der MainApp ist dann folgende Prozedur vorhanden, die die Anzeige des Fortschritts regelt.

Prozedur ShowProgress(Sender: TThread; AWorkCount: Integer); Das klappt auch wunderbar, ist nur etwas umständlich, denke ich.

Außerdem ist das alles unsynchronisiert, da keine Funktion ausgeführt wird, wenn sie mit Synchornize aufgerufen wird. Das äußert sich folgendermaßen. Wenn ich in der MainApp bei

ShowMessage(IntToStr(aWorkCount)); aufrufe, sehe ich, dass die VCL "verrückt spielt" (ich hoffe ihr wisst, was ich meine). Allerdings klappt es prima, eine Progressbar zu verändern etc.

Ich hoffe, ihr könnt helfen. Vielleicht auch einen ganz anderen Lösungsansatz geben.

Danke
  Mit Zitat antworten Zitat