Einzelnen Beitrag anzeigen

Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#1

Anwendungsinitialisierung in Thread auslagern

  Alt 17. Aug 2011, 10:39
Delphi-Version: 5
Hallo!

In der .dpr gibt es ja bei größeren Projekten eine ganze Reihe von Application.CreateForm-Zeilen. Die ganzen Formulare die da erzeugt werden verzögern den Programmstart zum Teil erheblich.

Da nicht alle Formulare sofort gebraucht werden, habe ich das Erzeugen aus der .dpr in die Haupt-Unit verlegt und führe es dort erst bei der Nachricht WM_AFTERSHOW (Formular fertig auf dem Bildschirm) aus. Dadurch startet das Projekt zwar erstmal blitzschnell, werkelt dann aber noch eine Weile nach.

Entweder lasse ich es werkeln oder ich füge zwischen jedes CreateForm noch ein ProzessMessages, dann ist das Programm soweit arbeitsfähig. Das Problem dabei: Wird während der noch laufenden CreateForm-Schlange ein Formular geöffnet, dann werden keine weiteren CreateForm-Anweisungen ausgeführt. Daher mein Gedanke, das ganze Initialisierungsgeraffel in einen separaten Thread auszulagern.

Was meint ihr dazu?

Grüße
Cody
  Mit Zitat antworten Zitat