Utworzyłem sobie w programie moduł do raportowania błędów.
Jego kod wygląda tak:
procedure Terr.Blad(Sender: TObject; E: Exception);
begin
{...}
prg.Lines.Add('##ERRSTART#');
prg.Lines.Add('##'+E.Message);
prg.Lines.Add('##'+E.ClassName);
prg.Lines.Add('##'+IntToStr(E.InstanceSize));
prg.Lines.Add('##'+(Sender as TComponent).Name);
prg.Lines.Add('##ERREND#');
err.ShowModal;
end;
end;
I wszystko działa okey tylko czy jest możliwość pobrania w jakim komponencie wystąpił błąd?
Jeżeli wystąpi błąd w kliknięciu na przycisk na Form1, to otrzymam raport, że coś tam się zepsuło na Form1, ale nic nie jest wspomniane o przycisku. (Sender as TComponent).Name); zwraca nazwę formy.