Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   App hängt sich beim starten auf. Ursache unbekannt (https://www.delphipraxis.net/205687-app-haengt-sich-beim-starten-auf-ursache-unbekannt.html)

DonManfred 6. Okt 2020 10:31

App hängt sich beim starten auf. Ursache unbekannt
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,

ich habe in den letzten 12 Jahren eine App mittels Delphi (anfänglich Delphi 2006, später dann mit XE3 weiterentwickelt) entwickelt.
Unter anderem sind hier diverse TMS-Komponenten (TMS ComponentPack) sowie List&Label 15 von Combit (Reportgenerator) im Einsatz.

Mein PC stürzt leider immer häufiger ab; das hat nichts mit meinem aktuell Problem zu tun. Das Compilat welches ich auf dem alten Rechner erzeuge funktioniert einwandfrei.

Nun habe ich einen neuen PC und auf diesem ebenfalls die IDE Delphi Xe3 und alle benötigten Komponenten installiert.
Allerdings aktualisierte Komponenten.
- die TMS ComponentPack wurden durch TMS UI-Pack ersetzt (das UI-Pack ersetzt das alte Component-Pack).
- List&Label wurde auf V25 aktualisiert.

Beim durchgehen der ganzen Forms der problematischen App habe ich dann jeweils hinweise von der IDE bekommen, dass es z.B. das Object LL15_ nicht finden konnte.
Logisch, hab ich ja eine neue Version installiert (25).
Ich habe dann die IDE das löschen der referenz durchführen lassen und dann die entsprechenden Objekte (namentlich waren das eigentlich immer LL = LL25_ und LLDB = LLDB15_ neu auf die Form gezogen. Natürlich jeweils die 25er Version und den Objekten den gleichen Namen gegeben wie die alte Komponente.

Nachdem ich mich nun durch alle Forms gearbeitet habe und die Objekte ausgetauscht habe habe ich dann erneut kompiliert.

Das Problem fängt schon beim starten an; Bei start wird ein Window angezeigt, der den Fortschritt der Initialisierung alle Forms anzeigt bevor dann - am ende - Application.Run läuft und das Hauptfenster anzeigt.

Problem ist, dass die Anzeige des Window nach kurzerzeit verschwindet. Also Visuell auf dem Monitor. Halte ich an diesem Punkt die Maus über den Eintrag der Taskbar kann ich das Fortschrittsfenster auch weiterhin sehen. Nachdem der Fortschritt beendet ist und eigentlich das Mainform angezeigt werden soll; ab hier passiert gar nichts mehr. Die App landet im Taskmanager nun in den Apps die im Hintergrund laufen.

Ich kann nur noch die App über den Taskmanager KILLEN.

Ich bin, muss ich ehrlich zugeben, ein bisschen überfordert was nun genau das Problem ist.

Angehangen ist die DPR (mbenannt zu .txt um es hochladen zu können) falls das von Belang ist. Es zeigt auch was ich mit dem Fortschrittsfenster meine.

Ich bin für jeglichen hinweis dankbar wie ich herausfinden kann, was sie da aufhängt.
Vielen Dank im vorraus!

Gruß Manfred (der hier im Forum Jahre nicht akttiv war) ;-)

PS: Ich möchte erwähnen, dass wir mehrere Apps nutzen.
Andere Apps die auf die gleiche Weise aktualisiert wurden funktionieren auch weiterhin (also auch neu kompilieren und so). Bei der einen App jedoch komme ich aktuell nicht wirklich weiter. :-(

venice2 6. Okt 2020 11:01

AW: App hängt sich beim starten auf. Ursache unbekannt
 
Die zeilen sehen seltsam aus.

Delphi-Quellcode:
  loading := Tloading.Create(Application) ;
  loading.Show; Application.Initialize;
sollte das nicht so sein?
Delphi-Quellcode:
  Application.Initialize;
  loading := Tloading.Create(Application) ;
  loading.Show;
ansonsten kann man mit der ".dpr nicht viel anfangen.

MyRealName 6. Okt 2020 11:20

AW: App hängt sich beim starten auf. Ursache unbekannt
 
Ich würde mal auf einen Stream Fehler tippen in einem der Formulare. Einfach mal alles, was geht, deaktivieren. Ausser dem Hauptformular und eventuell dem benötigtem Datenmodul (kann man ja aus dem DPR nicht erkennen). UNd dann probieren, ob es überhaupt startet. Falls ja, nach und nach die Formulare (in 5er blöcken, dann geht es schneller) wieder automatisch erzeugen lassen. Bis es kracht... und dann eingrenzen.

Ist aber nur eine Vermutung. Hab aber schon oft erlebt, dass falsche Properties (die es zum Bsp. nicht mehr gibt) solches Verhalten verursachen

Rollo62 6. Okt 2020 12:46

AW: App hängt sich beim starten auf. Ursache unbekannt
 
Ich würde Forms in der App on-demand laden.
Da werden hundert Forms hintereinander kreiert, die doch wohl nicht Alle gleichzeitig gezeigt werden müssen.

Du könntest erstmal nur die Hauptform laden,
und dann die Anderen nach und nach, je nachdem was gebraucht wird.

DonManfred 6. Okt 2020 15:13

AW: App hängt sich beim starten auf. Ursache unbekannt
 
Zitat:

Zitat von venice2 (Beitrag 1474954)
Sollte das nicht so sein?
Delphi-Quellcode:
  Application.Initialize;
  loading := Tloading.Create(Application) ;
  loading.Show;
ansonsten kann man mit der ".dpr nicht viel anfangen.

Danke für den Hinweis: jetzt wo Du es sagst macht es Sinn. Wobei das Jahrelang so funktioniert hat.

Habe ich nun aber geändert.

DonManfred 6. Okt 2020 15:15

AW: App hängt sich beim starten auf. Ursache unbekannt
 
Zitat:

Zitat von MyRealName (Beitrag 1474958)
Ich würde mal auf einen Stream Fehler tippen in einem der Formulare. Einfach mal alles, was geht, deaktivieren. Ausser dem Hauptformular und eventuell dem benötigtem Datenmodul (kann man ja aus dem DPR nicht erkennen). UNd dann probieren, ob es überhaupt startet. Falls ja, nach und nach die Formulare (in 5er blöcken, dann geht es schneller) wieder automatisch erzeugen lassen. Bis es kracht... und dann eingrenzen.

Ist aber nur eine Vermutung. Hab aber schon oft erlebt, dass falsche Properties (die es zum Bsp. nicht mehr gibt) solches Verhalten verursachen

Danke für den Vorschlag! Klingt Plausibel. Ich werde dem nachgehen und die Formulare alle nochmal rausschmeissen und in Blöcken neu einfügen.
Ich gebe Rückmeldung

DonManfred 6. Okt 2020 15:22

AW: App hängt sich beim starten auf. Ursache unbekannt
 
Zitat:

Zitat von Rollo62 (Beitrag 1474961)
Ich würde Forms in der App on-demand laden.
Da werden hundert Forms hintereinander kreiert, die doch wohl nicht Alle gleichzeitig gezeigt werden müssen.

Nein, müssen Sie nicht alle. Aus unwissenheit habe ich die damals aber so in dpr gelassen.

Später dann habe ich das verändert und diverse Formcreate rausgeschmissen und im Programm dann beim ersten Menuaufruf folgendermassen "nachinitialisiert"

Code:
  if not Assigned(frmkundenneu) then
    Application.CreateForm(Tfrmkundenneu, frmkundenneu);
Evtl. macht es Sinn da nochmal grundsätzlich aufzuräumen und viel mehr Dialoge zu diesem Zeitpunkt noch nicht initialisieren. :lol:

Zitat:

Zitat von Rollo62 (Beitrag 1474961)
Ich würde Forms in der App on-demand laden.
Da werden hundert Forms hintereinander kreiert, die doch wohl nicht Alle gleichzeitig gezeigt werden müssen.

Du könntest erstmal nur die Hauptform laden,
und dann die Anderen nach und nach, je nachdem was gebraucht wird.

Klingt vernünftig, ich werde dem nachgehen.

Einen "Streamfehler" hatte ich auch schon in verdacht, war mir aber nicht sicher wie ich das verifizieren könnte.

Mit den Hinweisen nun, denke ich, habe ich aber nochmal ein paar Anregungen bekommen die ich verfolgen sollte und werde. Vielen Dank an alle ;-)

DonManfred 12. Okt 2020 10:00

AW: App hängt sich beim starten auf. Ursache unbekannt
 
Nochmal vielen Dank für die Hinweise.

Durch neuaufbau der DPR (auslassen von vielen CreateForm-Aufrufen) konnte ich die App wieder lauffähig bekommen.
Muss zwar jetzt noch weitere fundstellen suchen wo ich ein Form noch nachinitialisieren muss aber grundsätzlich läuft es.

Startet nun auch deutlich schneller; es werden nur noch 5 Formulare Initialisiert, alle weiteren sollen erst später zur Laufzeit initialisiert werden. ;-)

Habe zwar mit einer anderen App ein neues Problem; da werde ich aber gleich einen neuen thread für erstellen.

Muss ich den Thread irgendwie als "Solved" kennzeichnen? Den 1. Post kann ich nicht mehr editieren um den Threadtitel anzupassen.

TurboMagic 12. Okt 2020 20:11

AW: App hängt sich beim starten auf. Ursache unbekannt
 
Nein, Threads müssen nicht als gelöst gekennzeichnet werden.
Ich denke dein Post mit der Erfolgsmeldung und Beschreibung,
dass das wirklich die Ursache war genügt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz