ErrorCode en Delphi XE

¿Cómo puedo obtener el numero de un error generado en mi aplicación?
Intente con E.ErrorCode pero no me sale declarado.

1 Respuesta

Respuesta

No hay códigos de los errores producidos por Delphi (si por los producidos por el sistema operativo, a los cuales puedes acceder con GetLastError). Para crear un log con cualquier error de Delphi que se produzca en una aplicación, puedes utilizar el componente ApplicationEvents, situado en la paleta Additional. En el evento OnException del componente puedes situar este código:

procedure TForm1.ApplicationEvents1Exception(Sender: TObject; E: Exception);
var ArchivoError : TextFile;
ArchivoErrorNombre: String;
begin
ArchivoErrorNombre := ChangeFileExt(Application.ExeName,'.error.log');
AssignFile(ArchivoError, ArchivoErrorNombre) ;
if FileExists(ArchivoErrorNombre) then Append(ArchivoError) else Rewrite(ArchivoError);
try
WriteLn(ArchivoError, Format('%s -> %s (%s)',[DateTimeToStr(Now),E.Message, E.ClassName]));
finally
CloseFile(ArchivoError);
Application.Terminate;
end;
end;

Eso crearía un log situado en la misma carpeta que el EXE de la aplicación, incluyendo la fecha y hora del error, el mensaje de error y la clase, por ejemplo:

14/04/2015 14:05:10 -> '1234' no es una fecha válida (EConvertError)

Salu2.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas