Einzelnen Beitrag anzeigen

Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#2
  Alt 9. Mär 2003, 14:18
Hallo,

zu 1)
das ist einfach, Du must nur Deinen eigenen Exception-Handler basteln, am Besten im Hauptformular (er gilt applikationsweit):

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    procedure MyExceptionHandler(Sender: TObject; E: Exception);
  public
    { Public declarations }
  end;

....
procedure // Zuweisung auf Deinen eigenen Handler
  TForm1.FormCreate(Sender: TObject);
begin
  Application.OnException := MyExceptionHandler;
end;

....
procedure TForm1.MyExceptionHandler(Sender: TObject; E: Exception);
var
  ErrFileName, ErrMsg: String;
  LOG_FILE: TextFile;
begin
  ErrFileName := ChangeFileExt(Application.ExeName, '.LOG');
    ErrMsg := Format('%s : %s - %s'#13#10, [DateTimeToStr(Now), E.ClassName, E.Message]);
    Memo1.Lines.Add(ErrMsg); // ups Memo, hätte ich fast vergessen!
    AssignFile(LOG_FILE, ErrFileName);
    Append(LOG_FILE);
    Writeln(LOG_FILE, ErrMsg);
    Flush(LOG_FILE); // Sicherstellen, daß der Text tatsächlich in die Datei geschrieben wird.
    CloseFile(LOG_FILE);
  end;
  Application.ShowException(E);
end;
zu 2)
tut mir leid, aber ich verstehe nicht was Du genau willst.
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat