AGB  ·  Datenschutz  ·  Impressum  







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

TApdComPort Exception

Ein Thema von DaCoda · begonnen am 8. Sep 2024 · letzter Beitrag vom 14. Sep 2024
Antwort Antwort
DaCoda

Registriert seit: 21. Jul 2006
Ort: Hamburg
165 Beiträge
 
Delphi 12 Athens
 
#1

AW: TApdComPort Exception

  Alt 14. Sep 2024, 13:20
Ich habe im Netz einen Lösungsansatz gefunden, der für meine Zwecke nützlich war.

Code:
uses AwUser;

type
TReaderException = procedure(ExceptObject: TObject; ExceptAddr: Pointer) of object;

type
TForm1 = class(TForm)
private
FOnReaderException:TReaderException;
procedure OnReaderException(ExceptObject: TObject; ExceptAddr: Pointer);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
FOnReaderException:=OnReaderException;
// Set global exception handler for AsyncPro
GShowExceptionHandler:=@FOnReaderException;
end;

procedure TMainWin.OnReaderException(ExceptObject: TObject;
ExceptAddr: Pointer);
begin
// Eigenes Exception-Handling
end;
Vielleicht ist das ja für Andere auch nützlich...
Debuggers don’t remove bugs, they only show them in slow-motion.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: TApdComPort Exception

  Alt 14. Sep 2024, 13:28
Ein Zeiger auf eine Variable in der ein Zeiger zur Methode steht
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
DaCoda

Registriert seit: 21. Jul 2006
Ort: Hamburg
165 Beiträge
 
Delphi 12 Athens
 
#3

AW: TApdComPort Exception

  Alt 14. Sep 2024, 13:41
Also, alles zurück...

Die vorgeschlagene Lösung macht alles noch schlimmer... Ich habe es jetzt aus meinem Projekt wieder entfernt.

Also muss ich weiter nach einer richtigen Lösung suchen, oder aber niemals das Kabel abziehen
Debuggers don’t remove bugs, they only show them in slow-motion.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: TApdComPort Exception

  Alt 14. Sep 2024, 13:45
Da hilft Heißkleber
oder ein "Nicht rausziehen!"-Aufkleber.

Application.OnException Delphi-Referenz durchsuchenTApplicationEvents.OnException
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

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

AW: TApdComPort Exception

  Alt 14. Sep 2024, 21:12
Ich schlage vor, dass du das im Quelltext selbst anpasst. Ich finde die Architektur der Klasse wirklich schlimm. Eine Exception zu werfen, die man nirgends optional einfach behandeln kann... brr, da schüttelt es mich.

Du könntest z.B. CheckException ändern und dort einen von außen zuweisbaren Handler einbauen (quasi ein Eventhandler oder ein Callback), mit dem du die weitere Behandlung umbiegen kannst.

Ich habe jetzt mal MadExcept benutzt und der zeigt mir dann an, siehe beigefügtes Bild.
Hast du auf dem entsprechenden Rechner kein Delphi? Dann wäre das Debuggen deutlich einfacher als mit MadExcept.
Sebastian Jänicke
AppCentral

Geändert von jaenicke (15. Sep 2024 um 09:45 Uhr)
  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:15 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