Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi 5 zeigt keine Fehlermeldung an (https://www.delphipraxis.net/208645-delphi-5-zeigt-keine-fehlermeldung.html)

LikeMike 1. Sep 2021 17:36

Delphi 5 zeigt keine Fehlermeldung an
 
Hallo!
Das Thema gibt es schon im Forum - leider ohne Lösung, daher hier praktisch das gleiche Problem.
Ohne dass ich bewusst etwas geändert hätte, werden in meinem Programm keine Fehlermeldungen mehr angezeigt (in der compilierten Version).

Schon diese ganz einfache Procedure sollte ja direkt eine Division durch 0 melden - es geschieht aber nichts - nada:
Code:
procedure TFHaupt.Button4Click(Sender: TObject);
VAR
  a,b : INTEGER;
begin
  a:=6; b:=0;
  showmessage(inttostr(a DIV b));
end;
Beim Debuggen erscheint natürlich sofort eine Meldung, aber nicht in der compilierten Version.
Welchen Schalter könnte ich da erwischt haben (Delphi 5 Enterprise).

Danke im voraus
Mike

dummzeuch 1. Sep 2021 18:25

AW: Delphi 5 zeigt keine Fehlermeldung an
 
Zitat:

Zitat von LikeMike (Beitrag 1494029)
Das Thema gibt es schon im Forum - leider ohne Lösung, daher hier praktisch das gleiche Problem.
Ohne dass ich bewusst etwas geändert hätte, werden in meinem Programm keine Fehlermeldungen mehr angezeigt (in der compilierten Version).

Schon diese ganz einfache Procedure sollte ja direkt eine Division durch 0 melden - es geschieht aber nichts - nada:
Code:
procedure TFHaupt.Button4Click(Sender: TObject);
VAR
  a,b : INTEGER;
begin
  a:=6; b:=0;
  showmessage(inttostr(a DIV b));
end;
Beim Debuggen erscheint natürlich sofort eine Meldung, aber nicht in der compilierten Version.
Welchen Schalter könnte ich da erwischt haben (Delphi 5 Enterprise).

Sowas kann theoretisch durch eine DLL hervorgerufen werden, die das Floating Point Control Word ändert.

http://www.nacad.ufrj.br/online/inte...ps_contw_f.htm

Das ist aber reine Spekulation. Wobei: Das ist ja eigentlich eine Integer-Operation, die die FPU gar nicht verwenden sollte.

LikeMike 1. Sep 2021 19:26

AW: Delphi 5 zeigt keine Fehlermeldung an
 
Hallo!
Danke für die Antwort.
Aber es tritt gar keine Fehlermeldung auf. Ich habe bewusst Datenbankfehler einprogrammiert (Zugriff auf Felder, die gar nicht existieren) etc.
Es erscheint trotzdem nie eine Fehlermeldung.

Es muss irgendwas in meiner Hauptsoftware sein, denn wenn ich ein Testprogramm erstelle (z.B. nur mit der fehlerhaften Procedure oben) funktioniert alles, wie es soll.

Lemmy 1. Sep 2021 19:33

AW: Delphi 5 zeigt keine Fehlermeldung an
 
Zitat:

Zitat von LikeMike (Beitrag 1494034)
Hallo!
Danke für die Antwort.
Aber es tritt gar keine Fehlermeldung auf. Ich habe bewusst Datenbankfehler einprogrammiert (Zugriff auf Felder, die gar nicht existieren) etc.
Es erscheint trotzdem nie eine Fehlermeldung.

Es muss irgendwas in meiner Hauptsoftware sein, denn wenn ich ein Testprogramm erstelle (z.B. nur mit der fehlerhaften Procedure oben) funktioniert alles, wie es soll.

Vollcompile schon mal gemacht? und sicher, dass du die korrekte Unit änderst und nicht zufällig ne Unit, die gar nicht Bestandteil des Projektes ist? Einfach mal QUatsch rein schreiben in die Unit.

LikeMike 1. Sep 2021 19:58

AW: Delphi 5 zeigt keine Fehlermeldung an
 
Ja - alles mehrfach durchcompiliert. Wir reden hier allerdings von über 200 Units mit > 2.000.000 Programmierzeilen. Die Software wird ständig erweitert und ich weiß nicht, seit wann genau dieses Verhalten auftritt (keine Fehlermeldung ist ja vordergründig eine gute Nachricht).
Die Frage geht also eher in die Richtung wie man so ein Verhalten überhaupt provozieren könnte. Dann könnte ich vielleicht auf dem umgekehrten Weg Rückschlüsse auf den fehlerhaften Programmteil ziehen.

Der schöne Günther 1. Sep 2021 20:00

AW: Delphi 5 zeigt keine Fehlermeldung an
 
Du kannst auch eine Release-Fassung im Debugger laufen lassen. Da sollte die Exception auch auftreten, richtig?

Die Frage ist ja, wie du explizit schreibst, dass sie dem Benutzer nicht angezeigt wird. Das kann man abstellen, indem man z.B. seinen eigenen (leeren) Exception-Handler in der VCL registriert, aber sowas macht man sicher nicht mal "aus Versehen". Aber so klingt es, denn der Benutzer hat in der Debug-Fassung ebenfalls keine Messagebox welche den Fehler anzeigt, richtig?

LikeMike 1. Sep 2021 20:06

AW: Delphi 5 zeigt keine Fehlermeldung an
 
Wie lasse ich eine Release-Fassung im Debugger laufen?

Der schöne Günther 1. Sep 2021 20:28

AW: Delphi 5 zeigt keine Fehlermeldung an
 
Ich hätte gesagt F9 drücken? Wenn du die Release-Fassung erstellen kannst, dann kannst du sie doch auch debuggen?

Aber sorry, Delphi 5 - Da kann ich nicht helfen. Als das raus kam bin ich noch in die Grundschule 👶 gegangen, und heute bin ich so alt dass ich keine Haare mehr auf dem Kopf habe. Das sollte einen auch mal zum Überlegen bringen, ob man nicht eh mal auf was neueres wechseln sollte - Da können dann vielleicht auch mehr Leute helfen 😉

LikeMike 1. Sep 2021 20:39

AW: Delphi 5 zeigt keine Fehlermeldung an
 
Schon richtig, aber ich arbeite natürlich auch mit Delphi Sydney und fast allen Vorgängern, aber bei so einem verzahnten und umfangreichen System mit 100ten von Komponenten (die es teilweise gar nicht mehr in neueren Version zu kaufen gibt) bleibt mir nichts anderes übrig, als mit Delphi 5 weiter zu machen.
Aber nochmal zum Debuggen. Wenn ich mit F9 compiliere erhalte ich schon die Debugger-Fehlermeldung. Die Meldung, die dem Benutzer aber im Normalfall angezeigt würde, erscheint da aber eben auch nicht.

Der schöne Günther 1. Sep 2021 21:06

AW: Delphi 5 zeigt keine Fehlermeldung an
 
Alles klar, dann hört sich das tatsächlich so an, als sei nur die Messagebox für den Benutzer vorm Bildschirm abgeschaltet.

Weise doch mal testweise das
Delphi-Quellcode:
OnException
-Event zu, wie hier in diesem Beispiel:
https://docwiki.embarcadero.com/Code...ption_(Delphi)

Dann wird doch hoffentlich was angezeigt, oder?


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:28 Uhr.
Seite 1 von 2  1 2      

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