Código
Beleza, já temos aqui a dica de como bloquear o teclado e mouse...mas nos resta como bloquear o gerenciador de tarefas do Windows XP. Então vamos lá. É fácil.
Obs: A dica de bloquear o teclado e mouse eu copiei daqui do site mesmo, só acrescentei a parte do Gerenciador de Tarefas.
O segredo todo está no registro. A chave DisableTaskMgr em HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesSystem é quem faz o trabalho. Então é só chaveá-la para 0 (desbloqueia) ou 1 (bloqueia). Viram só como é fácil.
As funções estão "avulsas" no código, exceto o código que bloqueia e desbloqueia que está num botão (segui os moldes da primeira dica...)
Vamos lá
}
function BlockInput(ABlockInput: boolean): Boolean; stdcall; external 'USER32.DLL';
procedure TravaGT(SimNao: boolean);
var
reg: TRegistry;
begin
try
reg := TRegistry.Create;
with reg do begin
RootKey := HKEY_CURRENT_USER;
OpenKey('SoftwareMicrosoftWindowsCurrentVersionPoliciesSystem',true); //se não existir, é criada
case SimNao of
true: WriteInteger('DisableTaskMgr',1);
false: WriteInteger('DisableTaskMgr',0) ;
end;
closeKey;
end;
finally
reg.free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
BlockInput(true); //bloqueia teclado e mouse
TravaGT(true); //bloqueia Gerenciador de Tarefas
Sleep(5000);
BlockInput(false); // desbloqueia teclado e mouse
TravaGT(false); //desbloqueia Gerenciador de Tarefas
end;
Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009