Ver Mensaje Individual
  #2  
Antiguo 16-09-2011
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Reputación: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Si he entendido bien, lo que necesitas es capturar el evento OnException del programa y desde allí tratar todos los errores.
Puedes crear un procedure en tu Form principal, algo así

Código Delphi [-]
private
  { Private declarations }
  procedure AlSaltarExcepcion(Sender: TObject; E: Exception);
public
  { Public declarations }

Lo asignas al crear el Form, ejemplo:

Código Delphi [-]
procedure TFmain.FormCreate(Sender: TObject);
begin
  Application.OnException := AlSaltarExcepcion;
end;

En tu procedure haces lo que creas conveniente, ejemplo:

Código Delphi [-]
procedure TFmain.AlSaltarExcepcion(Sender: TObject; E: Exception);
begin
  GuardarError( E.Message );
end;

Y en GuardarError lo almacena en tu fichero log.

Código Delphi [-]
procedure GuardarError( cMensajeError:string );
var
  F : TextFile;
  cF : string;
begin
  cF := ExtractFilePath(Paramstr(0))+FormatDateTime('yyyymmdd',now)+_FILELOGERROR_;
  AssignFile( F, cF );
  if FileExists( cF ) then               
    Append( F )
  else
    ReWrite( F );
  //
  Writeln( F, '-->  ' + FormatDateTime('dddd dd/mm/yyyy hh:nn:ss',Now) );
  WriteLn( F, cMensajeError );
  WriteLn( F, '' );
  Flush( F );
  CloseFile( F );
end;

En fin, es sólo un ejemplo simplón, para que te hagas una idea.
Espero que sea lo que buscas.
Responder Con Cita