Código:
implementation
{$R *.dfm}
{
# Declare as seguintes variáveis Globais:
# Log: TextFile;
# Data: TDateTime;
# OBS, para ser uma variável Global, crie ela acima da palavra implementation.
}
procedure CriaLog(FileName, Msg: String);
begin
AssignFile(Log, FileName);
// Verifica se já existe o arquivo Log_erro
if not FileExists(FileName) then begin
Rewrite(Log); // Caso não existir o arquivo Log_Erro ele escreverá um novo arquivo
end
else begin
Append(Log); // Caso exista o arquivo Log_Erro ele continuará a inserção de dados no arquivo existente
end;
Data:=Now;
Writeln(Log, DateTimeToStr(Data)+' = '+Msg); // Adiciona a linha com a data, hora e a mensagem do log
CloseFile(Log); // Fecha o arquivo de Log
{
# DateTimeToStr = Fará a conversão da variável DateTime para String.
}
Após inserir essa procedure, pressione F12 novamente, vá para o Evento Onclick do Button1 e adicione o seguinte comando:
Código:
procedure TForm1.Button1Click(Sender: TObject);
begin
// verifica se existe o arquivo
if not FileExists(ExtractFilePath(ParamStr(0))+'\Config.txt') then begin // Caso não existir o arquivo
ShowMessage('Arquivo não encontrado'); // mostra a mensagem que o arquivo não existe
CriaLog(ExtractFilePath(ParamStr(0))+'\Log_Erro.txt', 'Arquivo não encontrado'); // Cria o Log com o caminho e a mensagem do mesmo (Procedure CriaLog)
ExitProcess(0); // Sai da aplicação
end;
end;
Agora vai da criatividade de vocês em tratar os erros de seus softwares com um sistema de log, pois a procedure pode ser utilizada a qualquer momento. Também o exemplo acima fala sobre log de erros, porém vocês poderão adaptar da forma que desejar como por exemplo, log de acompanhamento de atividades do usuário, log de ações do sistema, etc.