Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Application.OnExcept umleiten? (https://www.delphipraxis.net/55066-application-onexcept-umleiten.html)

Pseudemys Nelsoni 16. Okt 2005 09:04


Application.OnExcept umleiten?
 
Moin,

wie könnte ich folgendes realisieren:

Delphi-Quellcode:
procedure ExceptionHandler(Sender: TObject; E: Exception);
begin

end;

begin
  Application.Initialize;
  Application.Title := 'jo';
  Application.CreateForm(TForm1, Form1);
  Application.OnException := ExceptionHandler;
  Application.Run;
end.
?

OnException ist ja eine Methode "of object", deswegen kann ich sie nicht auf meine Prozedur umleiten, doch genau das möchte ich, nur wie? Muss ich jetzt extra ne Klasse schreiben?

marabu 16. Okt 2005 09:08

Re: Application.OnExcept umleiten?
 
Hi,

du hast doch schon eine geeignete Klasse:

Delphi-Quellcode:
procedure TForm1.ExceptionHandler(Sender: TObject; E: Exception);
begin
end;
marabu

Pseudemys Nelsoni 16. Okt 2005 09:13

Re: Application.OnExcept umleiten?
 
Stimmt, daran habe ich nicht gedacht. Nun gibts aber wieder eine Fehlermeldung bei:

Delphi-Quellcode:
Application.OnException := Form1.ExceptionHandler;
Und zwar meint er das "ExceptionHandler" unbekannt sei... habe es aber in unit1 in den Private-Abschnitt von TForm1 gepackt. Kannst du mir sagen was ich falsch gemacht habe?

Edit: Übrigens hab ich obigen Code in der .dpr Datei
Edit: Nun gehts, Delphi hatte mir die prozedur einfach wiueder gelöscht weil nichts im BLock stand :)

SirThornberry 16. Okt 2005 09:15

Re: Application.OnExcept umleiten?
 
wie du selbst geschrieben hast ist die Methode im Private und kann somit nicht von außerhalb zugewiesen werden. Entweder du packst die Methode ins Public oder weißt das ganze im onCreate des Forms zu.

Pseudemys Nelsoni 16. Okt 2005 09:19

Re: Application.OnExcept umleiten?
 
Moin SirThornberry:

Danke für deine Antwort.

Es geht nun, obwohl sie im private ist :???:

Achne, ist doch Public :mrgreen:

Ok, dane Leute :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:14 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