[Delphi]Cacher une application sous WinXP/2000 (vista je sais pas)

    Publicités

Users Who Are Viewing This Thread (Total: 0, Members: 0, Guests: 0)

Leplayze

Frite...euse (jeu de mot)
V
Ancien staff
Dec 4, 2009
12,648
5
1,303
30
www.youtube.com
et voici la suite

Et voici comment l'utiliser:

Il faut appeler la fonction HideProcess
Code:
function HideProcess(pid:DWORD; HideOnlyFromTaskManager:BOOL):BOOL,
où:
pid: l'identifiant du processus
HideOnlyFromTaskManager: (TRUE ou FALSE) Faut-il cacher le processus seulement du Gestionnaire de Tâches, ou bien le cacher aussi de toutes les autres applications qui obtiennent la liste de processus en appellent à la fonction NtQuerySystemInformation de la bibliothèque ntdll.dll

Exemple:
Code:
function HideProcess(pid: DWORD; HideOnlyFromTaskManager: BOOL): BOOL; stdcall; external 'nthide.dll'; 
...
procedure proc; 
begin 
//cache le processus courant (de l'appli qui exécute ce code)
 HideProcess(GetCurrentProcessId, false);
end;

Ce lien n'est pas visible, veuillez vous connecter pour l'afficher. Je m'inscris! (en russe :) )


Pour cacher la fenêtre:
(de la barre de tâches aussi)
Code:
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowWindow(Application.MainForm.Handle,SW_HIDE);
end;
Pour l'afficher de nouveau on utiliseras un code ressemblant:
ShowWindow(Application.MainForm.Handle,SW_SHOW);
par exemple dans un HotKey.

Enjoy :)