AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Initialisierung falsch !

Ein Thema von TERWI · begonnen am 20. Aug 2022 · letzter Beitrag vom 25. Aug 2022
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.316 Beiträge
 
Delphi 12 Athens
 
#1

AW: Initialisierung falsch !

  Alt 24. Aug 2022, 20:51
Erstmal solltest du einfach mal in die Forms sehen, ob wirklich die Events (OnCreate) angehängt sind.

Zitat:
wo ist das "[VLC - DoInit]: ...begin" geblieben `?
Ja, und wo ist das "Create" geblieben?

Rate mal was passiert, wenn die Form nicht da ist und du Methoden davon aufrufen willst.

Und nun rate auch mal was der Debugger da helfen kann.
z.B. Haltepunkt auf ZatLIB._Init(Dispatcher); und die Maus über ZatLIB halten, oder diese Variable in die "überwachten Ausrücke" aufnehmen. (in den "lokalen Variablen" sieht man sie natürlich nicht)



Haltepunkte [F5] auf
Application.Initialize;
Application.CreateForm(TZatVLC, ZatVLC);
und
ZatLIB._Init(Dispatcher);
dann F9 ab den Haltepunkten weiter mit F8 und schauen was passiert.

Im nächsten Durchlauf, wenn man eine Stelle entdeckt hatte, ab welcher es falsch läuft, einmal mit F7 reingehn, falls man nich bereits aus der "knallenden Position" oder aus dem Stacktrace was erkennt.

Beim Halt an einer Exception, wenn man nichts sieht, dann nochmal F7 ... mehr als noch mehr schiefgehn kann eh nicht und mit etwas Glück wird es besser.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (24. Aug 2022 um 20:58 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Initialisierung falsch !

  Alt 24. Aug 2022, 21:09
Stimmt - OnCreate fehlt da auch. Hab ich vergessen zu notieren.
Der OnCreate-Event ist definitv besetzt !
Mit der "Vorgängerdatei" ging das ja auch (siehe eingangs) und das funktioniert auch alles anscheinend und
ES KNALLT NIRGENDWO !
Wenn ich alle auskarkierten LOG() in den _Init's, FormCreate/-Destroy setze, sehe ich auch alle....
NUR DIE ZAT_VLC eben nicht (mehr).

Und nun bitte nicht lachen:
Ich hab einige F-Tasten hier am Schleppi kaputt. Auch F9.
Das wird schwierig mit dem Debugger....
(Das ist kein Witz)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.554 Beiträge
 
Delphi 7 Professional
 
#3

AW: Initialisierung falsch !

  Alt 24. Aug 2022, 21:23
 if (Assigned(LOGGER) AND FDoLog) then LOGGER.LOG('VLC', S1, S2); Ist Logger ein entsprechende Methode zugewiesen? Wenn ja, wo?

Und:FDoLog := false; Die Zuweisung von FDoLog := DoLog; erfolgt erst nach dem Log('CREATE', '... begin'); , von daher ist das Fehlen des Begin bei ..... wo ist das "[VLC - DoInit]: ...begin" geblieben `? korrekt, es wäre eher verwunderlich, wenn es ausgegeben würde.

Delphi-Quellcode:
function TZatVLC._Init(Response : TResponse;
                       Panel : TPanel;
                       Name : string; // for naming graho and ROT
                       DoLog : boolean = true) : integer;
begin
  FDoLog := DoLog; // Bevor diese Zuweisung erfolgt, kann nicht geloggt werden.
                   // In Log muss FDoLog zur Ausgabe zwingend = true sein.
                   // Da _Init nach dem FormCreate erfolgt, kann aus dem FormCreate
                   // kein Eintrag im Logfile stehen.
  Log('DoInit', ' ...begin');
  result := -1;
  FResponse := Response;
  FVideoPanel := Panel;
  FName := Name;
  Log('DoInit', ' ...end');
end;
Wenn die F-Tasten kaputt sind: Du kann alles auch per Maus über das Menü erreichen. Gibt halt dann ein paar zusätzliche Kilometer, die die Maus laufen muss.

F9 ist einfach nur: Programm starten, da das bei Dir ja funktioniert, nimmst Du da weiterhin den funktionierenden Weg.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.603 Beiträge
 
Delphi 12 Athens
 
#4

AW: Initialisierung falsch !

  Alt 24. Aug 2022, 22:33
Wenn ich das richtig verfolge, wird FDoLog erst kurz vor DoInit-end auf true gesetzt. Alles davor kann somit nicht im Log erscheinen.
Delphi-Quellcode:
  FDoLog := DoLog;
  Log('DoInit', ' ...end');
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Initialisierung falsch !

  Alt 25. Aug 2022, 02:39
Redo ...
Ich nehme alles zurück und behaupte das Gegenteil...

Uwe hat Recht - mein Fehler, jetzt hab ich*s auch gesehen
' ... AND FDoLog' ist das Prob.

Ich schäme mich zutiefst, das ich das nicht selbst gesehen habe.

Geändert von TERWI (25. Aug 2022 um 02:45 Uhr)
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
711 Beiträge
 
Delphi 12 Athens
 
#6

AW: Initialisierung falsch !

  Alt 25. Aug 2022, 12:38
Redo ...

Ich schäme mich zutiefst, das ich das nicht selbst gesehen habe.
Brauchst Du nicht, solche Anfälle von Betriebsblindheit hat wohl schon jeder von uns erlebt.
Man liest halt oft nicht was da steht sondern was da stehen sollte. Das Gehirn arbeitet halt ziemlich seltsam, seine Autokorrektur ist manchmal wirklich lästig...
Peter Below
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.857 Beiträge
 
Delphi 12 Athens
 
#7

AW: Initialisierung falsch !

  Alt 25. Aug 2022, 14:05
Und da sind wir wieder beim Thema debuggen. Hättest du an der Stelle durch debuggt, hättest du sofort gesehen, dass das Loggen nicht passiert und wenn du dann die Werte angeschaut hättest, hättest du auch gesehen warum.

Debuggen ist bei der Softwareentwicklung einer der wichtigsten Punkte überhaupt. Ohne kann man nicht sinnvoll arbeiten, nicht im Hobby und schon gar nicht beruflich. Gar nicht.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#8

AW: Initialisierung falsch !

  Alt 25. Aug 2022, 14:14
Und da sind wir wieder beim Thema debuggen. Hättest du an der Stelle durch debuggt, hättest du sofort gesehen, dass das Loggen nicht passiert und wenn du dann die Werte angeschaut hättest, hättest du auch gesehen warum.

Debuggen ist bei der Softwareentwicklung einer der wichtigsten Punkte überhaupt. Ohne kann man nicht sinnvoll arbeiten, nicht im Hobby und schon gar nicht beruflich. Gar nicht.
Es ist halt ein Problem wenn man nicht weiß an welcher Wand man den Lichtschalter betätigen muß um das Licht an oder auszuschalten.
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.490 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Initialisierung falsch !

  Alt 25. Aug 2022, 14:56
Schon, dann debugged man halt und misste alle Leitungen beginnend mit dem Licht durch bis da man ist wo Strom ist
Und im Gegensatz zum Elektriker muss ein Softwareentwickler nicht die Wand aufstemmen.

Auch ich stimme dem zu: "Debuggen ist bei der Softwareentwicklung einer der wichtigsten Punkte überhaupt. Ohne kann man nicht sinnvoll arbeiten, nicht im Hobby und schon gar nicht beruflich. Gar nicht."
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz