Einzelnen Beitrag anzeigen

peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
701 Beiträge
 
Delphi 12 Athens
 
#11

AW: Fehler vor OnCreate finden

  Alt 20. Feb 2019, 10:56
Hallo Zusammen,

ich habe ein großes Projekt, welches im Unternehmen seit Monaten ohne Probleme läuft. Mit diesem Programm arbeiten 2 Abteilungen und ca. 30 User täglich.
Da die Software ein Benutzerberechtigungssystem beinhaltet gibt es natürlich auch einen LogIn.

Jetzt habe ich einen Rechner, auf dem das Programm einen Fehler auswirft. Nach der Anmeldung mit irgendeinem Benutzernamen kommt angehängte Fehlermeldung.
Da es der einzige Rechner ist, der Probleme macht, und ein altes Betriebssystem drauf war, welches einige Fehler im Protokoll anzeigte, habe ich Windows10 aufspielen lassen. Leider ohne Erfolg.
Das Programm wurde vorher auf dem Rechner nicht verwendet, weil es der Azubi-Rechner ist...

Ich dachte, ich könnte einfach ganz schlau alles mitloggen, was passiert. Leider ohne Erfolg, denn ich habe die LogIn-Procedure komplett geloggt und die OnCreate und OnShow Procedure des Hauptfenderts der Software. Die LogIn-Procedure läuft ohne Fehler durch. Leider tritt der Fehler dann auf, bevor OnCreate oder OnShow starten. Das heißtz ich habe ein schwarzes Loch, indem ich nicht weiß, was passiert und wie ich da dran kommen kann.
Ich vermute das er in dieser Zeit die DFM-Datei den Main-Form ausführt, aber die kann ich meines Wissens nicht loggen, oder?
Im Debugger kann man das schon verfolgen, aber das nützt Dir wenig (Create-Constructor overriden, breakppoint auf das "inherited Create" setzen, mit debug DCUs bauen, mit F7 in das Statement steppen).

Sieh Dir mal die Comboboxen etc. im Designer genauer an. Es gibt ein paar Dinge, die manchmal nicht in der creation sequence des forms funkionieren, wie z. B den ItemIndex einer Combobox zu setzen. Das hängt damit zusammen, das einige der Operatione eine Window handle erfordern. Die VCL legt das zwar nach Bedarf an (versucht es zumindestens), aber das kann schiefgehen. Was oft auch nicht funktioniert, ist der Versuch, den focus explizit in Code zu setzen, anstatt dafür die Activecontrol-Eigenschaft des Forms zu verwenden.
Peter Below
  Mit Zitat antworten Zitat