Jump to content
Fórum Script Brasil
  • 0

Proteção de threads


Caiol

Question

Boa noite.

Utilizo Delphi 7 e tenho desenvolvido um sistema anti-hacking para um jogo.

Utilizo uma DLL que é carregada pelo executável e crio várias threads para fazer o que eu preciso; só que um jogador pode simplesmente abrir o processo com um gerenciador avançado e fechar as threads/desinjetar a DLL.

No caso da desinjeção da DLL eu notei que o jogo fecha, então não preciso me preocupar.

Para tentar evitar que a thread seja fechada, eu tentei:

1: Evento OnTerminate: Ao fechar a thread, dar um ExitProcess; porém quando a thread é finalizada externamente, não chamou o evento...

2: API Hook (TerminateThread): Não funcionou porque o gerenciador que utilizei fechou a thread sem se quer chamar a função.

Utilizei o "Process Hacker 2" para monitorar o exe aberto e fechar a thread.

Se alguém puder me ajudar indicando algum modo de proteger essas threads. Agradeço.

Preciso somente de algum método pra notificar que elas foram fechadas e fechar o jogo também.

Att. Caiol.

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Dei uma olhada ai sim.

Obrigado pela resposta.

Tentei colocar o evento OnTerminate, mas não sei se estou declarando corretamente.

Tentei fechar a thread para teste pelo Self.Terminate e ele não achou o evento...

Declarei assim:

TMyThread = class(TThread)
  private
    FOnTerminate: TNotifyEvent;
    procedure SetOnTerminate(const Value: TNotifyEvent);
  protected
    procedure Execute; override;
    property OnTerminate: TNotifyEvent read FOnTerminate write SetOnTerminate;
  end;
procedure TTMyThread.SetOnTerminate(const Value: TNotifyEvent);
begin
  MessageBox(0, 'SetOnTerminate!!', 'Teste', MB_TOPMOST);
end;

procedure TTMyThread.Execute;
begin
   {... codigos ...}
end;

Lembrando que estou tentando previnir que ela seja fechada externamente.

Se conseguirmos fazer o OnTerminate funcionar já é um avanço.

Obrigado ai. =)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...