![]() |
Fehlfunktion
--- erledigt ---
Hallo, ich schreibe
Code:
und der Debugger arbeitet bei dem Wert '777' nicht die drunter stehende Anweisung ab, sondern überspringt diese Zeile!
if Suchkriterium <> '7' then
k := k + 1; Das ist doch ganz unmöglich!!! Ich vermute einen Dateidefekt. Weiß jemand, wie man das wieder hin bekommt? Anderes Symptom: Ich setze einen Haltepunkt bei
Code:
und der Debugger überspringt bei Einzelschritt die Zeile einfach, obwohl vor dem Start der Code neu compiliert worden war.
k := 0;
In dieser Zeile läßt sich auch kein Haltepunkt setzen. Er ist rot durchgestrichen nach dem Setzen. |
AW: Fehlfunktion
Sieht es nur so aus, als wenn er das
Delphi-Quellcode:
ausführt, oder wird es wirklich ausgeführt?
k := k +
Und zu
Delphi-Quellcode:
.
k := 0;
Sag bitte nicht, dass man im Compilerlog sowas lesen kann, wie "H2077 Auf ... zugewiesener Wert wird niemals benutzt" :stupid: |
AW: Fehlfunktion
Da werden DCU-Dateien verwendet, die nicht zum Quelltext passen. Meistens liegt das an ungünstig gesetzten Such- und/oder Ausgabepfaden oder an nicht eindeutig benannten Units (z.B. Klassiker wie Main.pas in mehreren Projekten).
Das kannst du auch leicht prüfen, indem du vor und nach der Anweisung mit ShowMessage einfach mal den Wert von k ausgeben lässt. Vermutlich kommen diese MessageBoxen nicht, weil nicht der aktuelle Code verwendet wird. Wenn der Dateiname nicht eindeutig ist, musst du die Unit zuerst umbenennen, damit er das ist. Vermutlich ist das Problem dann schon behoben. Am einfachsten kannst du ansonsten nach <Unitname>.dcu überall auf der Festplatte suchen und alle diese Dateien löschen. Das geht z.B. mit ![]() |
AW: Fehlfunktion
beim Weiterklicken im Debugger (Schritt-Modus) wird die Zeile übersprungen, d. h. es sieht so aus, wenn er die ganze Zeile einfach ignoriert.
Zu Deinem Hinweis: Ja, Du hast Recht, da steht [DCC Hinweis] MAIN.pas(4835): H2077 Auf 'k' zugewiesener Wert wird niemals benutzt |
AW: Fehlfunktion
witzig, ich habe jetzt noch ein paar Prüfoptionen in den Optionen verschärft und jetzt scheint es zu funktionieren
Die Main.pas gibt es öfter, aber es gibt im Projekt nur Bezüge auf den Entwicklungsordner. Aber Löschen hatte auch nichts gebracht. Es war schon merkwürdig, daß der Debugger wirklich so getan hat, als gäbe es die Zeile gar nicht. Beim schrittweisen Ausführen des Code hat er echt die Zeile ignoriert!!! |
AW: Fehlfunktion
Zitat:
Darum habe ich geschrieben, dass du ShowMessage dazupacken sollst. Dann wird der Wert verwendet. Daran siehst du dann beides, einerseits, dass der aktzuelle Quelltext verwendet wird, andererseits ob der Wert sich ändert. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04: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-2025 by Thomas Breitkreuz