Boa tarde, estou com um problema ... tenho uma procedure que faz uma verificação heuristica, no caso ela pega todo texto que existe na tela e aplicações e verifica com um listbox pesquisando pela existencia de algum através da função "Pos".
Acontece que essa procedure está sendo chamada por uma Thread (CreateThread e GotoLabel) e quando uso um delay (Sleep) baixo ela causa crash na aplicação.
Já tentei ao maximo resolver porém sem resultados positivos até agora, se alguém souber como me ajudar agradeço.
Segue a procedure:
procedure Heuristico;
var
Idx : Word;
X : Word;
Caption : Array[0..255] of Char;
begin
for Idx := 0 to ListaHeur.Count-1 do begin
Application.ProcessMessages;
for X:=1 to 10000 do begin
Application.ProcessMessages;
if (GetWindowText(x,Caption,255) <> 0) then begin
Application.ProcessMessages;
if Caption <> '' then begin
Application.ProcessMessages;
if (Pos(AnsiLowerCase(ListaHeur.Strings[Idx]), AnsiLowerCase(Caption)) > 0) then begin
detectado := true;
PostMessage(FindWindow(nil, Caption), WM_Close, 0, 0);
CriaLog('null','null', Caption);
break;
end;
Application.ProcessMessages;
end;
Application.ProcessMessages;
end;
Application.ProcessMessages;
end;
Application.ProcessMessages;
end;
Application.ProcessMessages;
end;
Pergunta
douglaspr
Boa tarde, estou com um problema ... tenho uma procedure que faz uma verificação heuristica, no caso ela pega todo texto que existe na tela e aplicações e verifica com um listbox pesquisando pela existencia de algum através da função "Pos".
Acontece que essa procedure está sendo chamada por uma Thread (CreateThread e GotoLabel) e quando uso um delay (Sleep) baixo ela causa crash na aplicação.
Já tentei ao maximo resolver porém sem resultados positivos até agora, se alguém souber como me ajudar agradeço.
Segue a procedure:
Grato a todos :)
Link para o comentário
Compartilhar em outros sites
23 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.