Nix für ungut ... aber wer Stück für Stück mit KnowHow programmiert, bei dem halten sich (dubiose) Fehler (meist) in Grenzen. Wie bei mir z.B. ...
Niemand ist unfehlbar! Wie willst du ohne Debugger den aktuellen Zustand deiner Anwendung herausfinden? Ein Logger ist nur ein primitiver Ersatz für den Debugger. Mit Hilfe des Debuggers findest du dubiose Fehler weitaus schneller als mir irgend welchen Logdateien ...
A) in dem ich kontrolliert progge und nicht alles gleichzeitig tippe oder planlos irgendwelchen Code kopiere und
B) ... mit meinem eigenen Logger halt.
Oder wenn es elementare Dinge zu meckern gibt, sagt mir die
IDE schon "Bescheid".
Zu 99,5% sehe ich aus dem Ablauf und der Fehlermeldung, welchen Bockmist ich gebaut habe.
Wo ist dann auch nicht schwer zu ermitteln, wenn man weiss, was man (eben) gemacht hat.
Offenbar wußtest du im vorliegenden Fall eben nicht, was du eben gemacht hattest. Hier helfen Breakpoints ungemein. Auch ein weiterer "Trick" sei dir nicht vorenthalten: Wenn dir sowas nochmal passiert, daß du irgendwie auf der Tastatur abrutschst und sich dadurch fehlerhafter Code in deine Anwendung einschleicht, gehe folgendermaßen vor:
1. Kopiere den gesamten Code der jewweiligen
Unit, die du gerade zu untersuchen gedenkst, in eine Textdatei (Ctrl-A im Delphi-Editor, danach Ctrl-C, danach im Notepad o.ä. Ctrl-V und abspeichern.
2. Arbeite dich mit der Rückgängig-Funktion durch deine
Unit und du erhältst einen genauen Verlauf deiner Tipp-Aktionen in dieser
Unit.
3. Am Ende den abgespeicherten Code wieder einfügen.
4. Falls du den Fehler beim durcharbeiten mit der Rückgängig-Funktion gefunden hattest, kannst du jetzt die Korrektur vornehmen. Sämtliche nach dem Vertippen editierten Zeilen bleiben dir ja erhalten.
Der Debugger ist in der
IDE hier übrigends überwiegend abgeschaltet.
Nur in Notfällen wie jetzt mache ich da mal wieder ausnahmsweise den Haken rein.
... Wenn ich das schon sehe, wenn ich das Stepweise mit F7 durchrutsche (-n soll) und die Anzahl der geladenen Forms & Units nimmt exorbitant zu ..... wo ist da ne Übersicht ?
Du scheinst dich von der Verwendung des Debuggers durch die Anzeige von System-Units abschrecken zu lassen. Letzteres kannst du jedoch unterbinden, indem du in den Projekt-Optionen das Debuggen externer Units nicht zuläßt.
Ich habs übrigens raus >>> Es war mein eigener Logger !
Mit diesem unkontrolliertem "Affengriff" heute Mittag scheint sich da eine Zeile eingeschlichen zu haben, die den Logger selbst noch vor vollständiger Initialisierung aufgerufen hat.
So was kenne ich zwar ala "ungültige Adresse aufgerifen/beschrieben" - aber hier scheint's gleich das ganze Programm vollständig aus der Kurve gehauen zu haben.
Hatte ich bisher noch nicht - in mehr als 20 Jahren mit Pascal und Delphi.
Und wie hast du das jetzt rausgefunden? Würde mich wirklich interessieren!
Auch würde mich interessieren, wie man mit einem versehentlichen Tastatur-Verrutscher eine ganze Zeile Code in eine
Unit einfügen kann, der auch noch Gültigkeit besitzt und keinen Compiler-Fehler auslöst ...