AGB  ·  Datenschutz  ·  Impressum  







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

Keine Exceptions

Ein Thema von bcvs · begonnen am 11. Apr 2025 · letzter Beitrag vom 14. Apr 2025
Antwort Antwort
bcvs

Registriert seit: 16. Jun 2011
733 Beiträge
 
Delphi 12 Athens
 
#1

Keine Exceptions

  Alt 11. Apr 2025, 10:57
Hallo,

wie kann es eigentlich sein, dass in einem Projekt keine Exceptions mehr angezeigt werden?

Im Debugger sehe ich die Exceptions noch, aber im Programm selbst nicht. Gibt es da irgenwo eine globale Einstellung für so was?

Delphi 10.2 in dem Fall
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
714 Beiträge
 
Delphi 12 Athens
 
#2

AW: Keine Exceptions

  Alt 11. Apr 2025, 11:09
Siehst Du keine Exception-Meldungen zur Laufzeit, d. h. Exe gestartet ohne Debugger oder außerhalb der IDE? Da fällt mir nur eine Möglichkeit ein: TApplication (und TApplicationEvents) haben einen Event OnException. Wenn Du dafür einen Handler angelegt hast, der die Exception nicht anzeigt, würde das die Symptome erklären.
Peter Below
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
733 Beiträge
 
Delphi 12 Athens
 
#3

AW: Keine Exceptions

  Alt 11. Apr 2025, 11:50
Siehst Du keine Exception-Meldungen zur Laufzeit, d. h. Exe gestartet ohne Debugger oder außerhalb der IDE?
Genau, so ist es. OnException habe ich nicht.

Ich vermute, es hängt mit dem MadExcept zusammen. Habe gerade noch etwas ausprobiert.

Hintergrundinfo:
Ich zwei Projekte, die sich das selbe Mainform und auch die meisten Units teilen und nur über ifdefs unterschiedlich kompiliert werden.

Die Projekte wurde gerade auf einen neuen Rechner mit neu installiertem Delphi portiert. Auf dem alten Rechner war in den Projekten das MadExcept aktiviert. Auf dem neuen Rechner war zunächst noch kein MadExcept installiert. Das habe ich gerade nachgeholt.

Jetzt habe ich folgende Situation, was die Anzeige von Meldungen im Exception-Fall angeht (Ich hoffe, das ist einigermaßen verständlich)

Code:
Alter Rechner
  MadExcept aktiviert
    Projekt A: MadExept-Meldungen
    Projekt B: MadExept-Meldungen

  MadExcept deaktiviert
    Projekt A: nichts
    Projekt B: nichts

Neuer Rechner
  MadExcept aktiviert
    Projekt A: MadExept-Meldungen
    Projekt B: nichts

  MadExcept deaktiviert
    Projekt A: nichts
    Projekt B: nichts

Was micht wundert ist, dass auch auch schon auf dem alten Rechner bei deaktiviertem MadExcept keine normalen Exceptions kommen. Das war mir vorher nicht aufgefallen. Und auf dem neuen Rechner kommt bei Projekt B überhapt nichts, auch nicht mit aktivem MadExcept.

Kann sich da jemand einen Reim drauf machen?
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
714 Beiträge
 
Delphi 12 Athens
 
#4

AW: Keine Exceptions

  Alt 12. Apr 2025, 11:12
Mit MadExcept habe ich selbst nie gearbeitet. Aber Du bist Dir sicher, daß die fraglichen Exceptions nicht in deinem eigenen Kode in einem try except-Block abgefangen und verschluckt werden und MadExcept sie nur wie der IDE Debugger auf einer tieferen Ebene detektiert und anzeigt bzw. ins Log schreibt?

Kannst Du das Problem in einem Testprojekt nachstellen?

Versuch auch mal, das DPROJ-File umzubenennen und das Projekt über das DPR-File zu öffnen. Ein neu erzeugtes DPROJ-File hat halt sicher keine historischen Artefakte drin...
Peter Below
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.039 Beiträge
 
Delphi 12 Athens
 
#5

AW: Keine Exceptions

  Alt 12. Apr 2025, 16:55
Hallo,

MadExcept kümmert sich eigentlich nur um Exceptions um die sich der Entwickler
noch nicht selber gekümmert hat.
Grüße
TurboMagic
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke
Online

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

AW: Keine Exceptions

  Alt 12. Apr 2025, 19:16
Kannst du das denn nicht debuggen? Je nachdem, wo die Exception ausgelöst wird, gibt es natürlich unterschiedliche Stellen, an denen diese behandelt wird. Das kannst du aber im funktionierenden Projekt prüfen.

Beispiel:
Wenn die Exception in einem Buttonklick ausgelöst wird, landest du im except in TWinControl.MainWndProc, wo dann Application.HandleException aufgerufen wird (das dann die Messagebox anzeigt).
Sebastian Jänicke
AppCentral
  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 05:26 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