AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Delphi Kleine Komponente zur Fehlerbericht erstattung
Thema durchsuchen
Ansicht
Themen-Optionen

Kleine Komponente zur Fehlerbericht erstattung

Ein Thema von Cyberaxx · begonnen am 3. Jan 2007 · letzter Beitrag vom 10. Jan 2007
Antwort Antwort
Benutzerbild von Cyberaxx
Cyberaxx
Registriert seit: 15. Jul 2005
Hallo,

Ich weiß nicht ob ich hier in der Sparte richtig bin aber ich versuchs einfach mal.

Ich möchte hier mal eine kleine Komponente vorstellen, sie ist zwar schon funktionstüchtig aber meiner Meinung nach noch nicht so der Hit. Entstanden ist sie dadurch, das in der Firma wo ich tätig bin, schon ein paar meiner Programme im Einsatz sind und es ab und an mal zu diversen und unvorhergesehenen Fehlerchen kommt.

Die Komponente ist ein Fehlerdialog:
- Datum und Uhrzeit des Fehlers
- Programmname
- Fehlerbeschreibung
- Fehlertyp
- Sender der Fehlermeldung

Zusätzlich kann dieser kleine Fehlerbericht als Email versendet werden. Bisher nur auf Knopfdruck, soll aber auch noch automatisch passieren können, sofern man die Option setzt.
An einen SMS versand habe ich auch noch gedacht aber erstmal muss es ja so laufen.

Es ist soweit auch alles einstellbar, bis auf das ich vllt das erstellen des Logs oder versenden der Email noch als Ereignis einbauen sollte, wo ich das grad beim schreiben sehe.

Vielleicht hat hier ja jemand noch Änderungs- oder Verbesserungsvorschläge.

Gruß

Cyber
Miniaturansicht angehängter Grafiken
komponentescreen_357.jpg   errorscreen_124.jpg  
Angehängte Dateien
Dateityp: pas errorevent_342.pas (11,8 KB, 40x aufgerufen)
Das Aufwachen aus einem boesen Traum muss einen nicht erleichtern. Es kann einen auch erst richtig gewahr werden lassen, was man Furchtbares getraeumt hat, vielleicht sogar welcher furchtbaren Wahrheit man im Traum begegnet ist!
 
Benutzerbild von Cyberaxx
Cyberaxx

 
Delphi XE5 Professional
 
#2
  Alt 4. Jan 2007, 10:53
Hab da mal grad eine kleine Frage.

Bisher lass ich meine Komponente über den ApplicationEvent laufen.
Wie kann ich das anstellen das ich nur die Komponente drauf ziehen muss und er springt automatisch an bei einem Fehler?
Daniel
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin
 
#3
  Alt 4. Jan 2007, 13:27
Ich hätte noch einen Voschlag: wie wäre es mit der Ausgabe der Code-Zeile, in der es kracht? Für den Entwickler sicher sehr interessant

Für weitere Anregungen musst du dir nur die Konkurrenz anschauen, z.B. Bei Google suchenmadExcept

Leo S.
  Mit Zitat antworten Zitat
Benutzerbild von Cyberaxx
Cyberaxx

 
Delphi XE5 Professional
 
#4
  Alt 4. Jan 2007, 13:37
Daran dachte ich auch bereits, haut aber wohl nicht hin in der Kompilierten Exe wenn ich das hier im Forum richtig verstanden habe.

Wenn ich mich irre lasse ich mich gerne eines besseren belehren
Daniel
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

 
Delphi 10 Seattle Enterprise
 
#5
  Alt 4. Jan 2007, 13:38
Zitat von Meflin:
Für weitere Anregungen musst du dir nur die Konkurrenz anschauen, z.B. Bei Google suchenmadExcept
Oder schau Dir die JCL an, die ist OpenSource. Dort gibt es auch solche Funktionen wie in madExcept.
Die kannst Du dann in Deine eigenen Programme einbauen.

Das für Dich interesannte Modul der JCL ist jclDebug.
  Mit Zitat antworten Zitat
Benutzerbild von Cyberaxx
Cyberaxx

 
Delphi XE5 Professional
 
#6
  Alt 10. Jan 2007, 08:34
Es ging noch ein wenig einfacher, hab mir einfas TApplicationEvrents angeschaut.
War eigentlich nicht so schwer wie ich dachte.
Jetzt nur noch Komponente aufs Form ziehen und es wird jeder Fehler abgefangnen.
Die Komponente ApplicationEvents geht noch einen Schritt weiter und prüft welches Ereignis selbst abgefangen wird.
Ich denke das kommt bei mir auch noch rein aber sonst denke ich ist es für mich gut von nutzen.

Delphi-Quellcode:
Uses
  Forms,...

constructor TErrorEventForm.Create(AOwner: TComponent);
begin
  Inherited Create(AOwner);

FAppEvents := TComponentList.Create(False);

...

procedure TErrorEventForm.HandleException(Sender: TObject; E: Exception);
begin
SetError(Sender, '', E);
end;

destructor TErrorEventForm.Destroy;
begin
  Application.OnException := nil;
  FAppEvents.Free;

  inherited Destroy;
Daniel
  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 00:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz