Depois de muito custo, consegui montar uma rotina que lê um arquivo e procura nele uma String que indica que houve o fim na execução de um script.Agora estou tendo dois problemas:
1. Não consigo inserir múltiplos comandos dentro do If. Quando eu faço isso, ele só resolve o que estiver no Else. Temporariamente, criei vários If´s pra solucionar isto.
2. Quando eu incluo a linha "if completo=false then break;" o programa me devolve para os dois casos (true/false) a Mensagem "Script em andamento", mas se eu retiro novamente, o programa funciona corretamente.
Arq: TStringList;
i: Integer;
FileName:string;
linha:String;
temp:String;
completo:boolean;
begin
Arq := TStringList.Create; (*** INSTANCIA A VARIÁVEL ***)
try
FileName := 'C:\log.txt';
if FileExists(FileName) then
Arq.LoadFromFile('C:\log.txt');
for i := 0 to Arq.Count - 1 do (*** PERCORRE AS LINHAS (ÍNDICES) ***)
begin
linha:=Arq[i];
{se esta string estiver no LOg, significa que a execução terminou}
if (AnsiContainsText(linha, '= Exit Status) = True) then
completo:= True;
{Se a o Log finalizou, recebe o número do Status. Se não finalizou, completo é false}
if completo=true
then
temp := Trim(AnsiRightStr(linha, Length(linha) - Pos(':', linha)))
else
completo:=false;
if completo=false then break;
end; //End For
if completo=true
then
Showmessage('Script Finalizado!')
else
showmessage('Script em Andamento);
finally
FreeAndNil(Arq); // LIBERA A VARIÁVEL DA MEMÓRIA
end;//end do try/finally
end.
Pergunta
Guinho.TI
É o seguinte,
Depois de muito custo, consegui montar uma rotina que lê um arquivo e procura nele uma String que indica que houve o fim na execução de um script.Agora estou tendo dois problemas:
1. Não consigo inserir múltiplos comandos dentro do If. Quando eu faço isso, ele só resolve o que estiver no Else. Temporariamente, criei vários If´s pra solucionar isto.
2. Quando eu incluo a linha "if completo=false then break;" o programa me devolve para os dois casos (true/false) a Mensagem "Script em andamento", mas se eu retiro novamente, o programa funciona corretamente.
Link para o comentário
Compartilhar em outros sites
11 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.