Bloquer le taskmgr sans clé de registre

Soyez le premier à donner votre avis sur cette source.

Snippet vu 9 026 fois - Téléchargée 23 fois

Contenu du snippet

Suite a une question que j'ai poser sur le forum

en vain

j'ai chercher et trouvé le moyen de bloqué le taskmgr sans utiliser les clé de registre

pour sa j'ai utiliser une méthode que j'avais utiliser pour une de mets autre source 'KeygenMe Protection'

la methode des Handles bien connus (je vous apprend rien)

sauf que la j'ai utiliser le fichier U_Controle.pas de Kenavo ici:

http://www.delphifr.com/code.aspx?ID=22078

pour l'adapter a mes besoin

et ensuite j'ai utiliser un timer qui tourne en boucle toute les milli-secondes

dans la procédure du timer j'ai mis le code qui détecte si tel ou tel fenêtre et

ouverte si c'est le cas on la ferme sans se poser de question

Source / Exemple :


//Le pire c'est que c'était tous simple
//bref.......
//une fichier *.pas est à ajouter dans le proget

     unit U_Controle;

    interface

    uses
      Windows, SysUtils, Messages;

    function HandleOf(TitreFenetre : String): THandle;
    function HandleOfChild(HndlParent : THandle; Classe, Titre : String; PrevHandle : THandle): THandle;
    Function ClickOn (Handle : THandle): boolean;
    Function ClickOnW (Handle : THandle): boolean;
    function SetEditText(h : THandle; s : String) : boolean;

    implementation

    // ---------------------------------------------------
    // Il faut absolument respecter majuscules-minuscule
    //  dans les nom des fenêtres ou des contrôles
    // ---------------------------------------------------

    function HandleOf(TitreFenetre : String): THandle;
    begin
      Result :=0;
      //Retrouve le Handle de la fenêtre principale
      Result := FindWindow(nil, PChar(TitreFenetre));
    end;

    function HandleOfChild(HndlParent : THandle; Classe, Titre : String; PrevHandle : THandle): THandle;
    var
      ProgramHwnd : THandle;
    begin
      // retrouve le handle d'un controle enfant de type Classe de nom (caption) Titre
      Result :=0;
      if HndlParent<>0 then
        result := FindWindowEx(HndlParent, PrevHandle, Pchar(Classe),Pchar(Titre));
    end;

    Function ClickOn (Handle : THandle): boolean;
    begin
      // PostMessage
      // n'attend pas la fin de traitement du message
      Result := BOOLEAN( PostMessage(Handle, BM_CLICK, 0, 0) );
    end;

    Function ClickOnW (Handle : THandle): boolean;
    begin
      // SendMessage
      // Attend la fin de traitement du message
      Result := BOOLEAN( SendMessage(Handle, BM_CLICK, 0, 0) );
    end;

    function SetEditText(h : THandle; s : String) : boolean;
    begin
      // Modifie le Contenu d'un TEdit
      // Modifie le Nom (caption) d'un controle ou d'une form
      Result := BOOLEAN( SendMessage(h,WM_SETTEXT,0,DWord(Pchar(s))) );
    end;

    end.

//et sur votre fiche .pas ajouter dans uses U_Controle et pour finir
//sur votre TForm mettais un timer et réglé son Interval sur 1
//et Enabled sur true
//mettais ceci dans la procedure du timer1

     procedure TForm1.Timer1Timer(Sender: TObject);
    begin
      aHandle := HandleOf('Gestionnaire des tâches de Windows');
        if aHandle <> 0 then begin
          SendMessage(aHandle, WM_CLOSE, 0, 0);
        end;

    end;

//Pensez a déclarer votre variable 'ahandle' comme ceci: var //ahandle:thandle;

Conclusion :


voilii voiloo
maintenant dans n'importe quel session on peut bloquer le taskManager
vous pouvez faire sa avec toute sorte d'application si vous avez le titre de sa Caption (titre de sa fenetre)

Toute amélioration de ce code est bien sur la bienvenue

@++

A voir également

Ajouter un commentaire Commentaires
Messages postés
600
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
6 avril 2010
1
Je découvre ce source... juste par curiosité, à part pour protéger une sorte de programme inavouable (virus, trojan) pour qu'il soit invisible, c'est sensé servir à quoi?

Autre méthode toute simple pour désactiver le taskmanager: renommer le fichier taskmgr.exe dans Windows/System32 en qqchose d'autre et le remplacer par une copie d'un autre exe (genre notepad, lol).

Ceci dit j'aimerai savoir s'il est possible de faire pointer le raccourci Alt+Ctrl+Del vers autre chose que taskmgr.exe de manière moins brutale.
Messages postés
143
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
7 mars 2009

Caribensila....lol c'est même certain...

MATRIX1 pour ma part je tourne sur XP SP2...
Messages postés
169
Date d'inscription
dimanche 16 février 2003
Statut
Membre
Dernière intervention
15 avril 2008

Excuser moi ! mais de quel version de windows vous parlez
Messages postés
2527
Date d'inscription
jeudi 15 janvier 2004
Statut
Membre
Dernière intervention
16 octobre 2019
16
Je dirais même plus :
il l'a échappé belle KENAVO!
Il aurait pu en rajouter une paire. mdr
Messages postés
6
Date d'inscription
jeudi 10 avril 2003
Statut
Membre
Dernière intervention
25 mars 2008

KENAVO, visiblement il n'aurait pas pu corriger tes fautes d'orthographe ... ;-)
Afficher les 10 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.