
Impedindo a Finalização da Aplicação (CTRL+ALT+DEL/TaskManager) no xp e no windows 7 no vista etc
Portal AH BLOGS
se você quer esconder o seu programa dos sistemas compatíveis com o Windows NT (o 2000 e o XP) você precisará trabalhar com o registro...
O procedimento HabilitaCTRLALTDEL aceita um valor booleano para o parâmetro YesNo. Se você envia um valor False como parâmetro, e o código é executado, quando o usuário pressiona a combinação CTRL + ALT + DEL, o Gerenciador de Tarefas (Task Manager) será desabilitado, enviando a mensagem padrão. Então, eis aí o código:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Adicione a unit Registry no seu projeto
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Como usar:
Você poderá iniciar e finalizar o procedimento respectivamente nos eventos OnCreate e OnDestroy do seu formulário principal:
procedure TForm1.FormCreate(Sender: TObject);
begin
HabilitaCTRLALTDEL(False);
// Desativa a combinação CTRLALTDEL. Desativa também o Gerenciador de Tarefas no computador com a aplicação executada;
end;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
procedure TForm1.FormDestroy(Sender: TObject);
begin
HabilitaCTRLALTDEL(True);
// Habilita o conjunto de teclas, bem como o Gerenciador de Tarefas;
end;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Insira o procedimento HabilitaCTRLALTDEL na sessão implementation do form, como segue abaixo:
procedure HabilitaCTRLALTDEL(YesNo : boolean) ;
const
sRegPolicies = '\Software\Microsoft\Windows\CurrentVersion\Policies';
begin
with TRegistry.Create do
try
RootKey:=HKEY_CURRENT_USER;
if OpenKey(sRegPolicies+'\System\',True) then
begin
case YesNo of
False:
begin
WriteInteger('DisableTaskMgr',1) ;
end;
True:
begin
WriteInteger('DisableTaskMgr',0) ;
end;
end;
end;
CloseKey;
if OpenKey(sRegPolicies + '\Explorer\',True) then
begin
case YesNo of
False:
begin
WriteInteger('NoChangeStartMenu',1) ;
WriteInteger('NoClose',1) ;
WriteInteger('NoLogOff',1) ;
end;
True:
begin
WriteInteger('NoChangeStartMenu',0) ;
WriteInteger('NoClose',0) ;
WriteInteger('NoLogOff',0) ;
end;
end;
end;
CloseKey;
finally
Free;
end;
end;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
E é isso ai, salve o seu projeto e rode o programa. Faça o teste apertando a tecla Ctrl+Alt+Del. Se tudo deu certo, o Windows exibirá uma mensagem de erro padrão, informando que o Gerenciador de Tarefas foi desativado. Você pode até mesmo tentar executar o aplicativo do Gerenciador de tarefas, o arquivo taskmgr.exe.
Espero que o artigo seja útil a vocês!
Nenhum comentário:
Postar um comentário
Gostou deixe um Comentários, Aproveite e deixe o link do seu blog