begin process at 2012 02 13 04:47:42
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurité

 > VB6 - FONCTION QUI BLOQUE LE BUREAU

VB6 - FONCTION QUI BLOQUE LE BUREAU


 Information sur la source

Attention: ce code a été marqué comme suspect par un admin, il peut donc être dangereux. Ce code a été laissé sur le site dans un but pédagogique, ne l'exécutez pas si vous ne comprenez pas son contenu!
Note :
8,71 / 10 - par 7 personnes
8,71 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Sécurité Classé sous :raccourci, bloquer, touche, bureau, gestionnaire Niveau :Débutant Date de création :27/01/2006 Date de mise à jour :27/01/2006 18:32:34 Vu :17 909

Auteur : bobjay

Ecrire un message privé
Commentaire sur cette source (30)
Ajouter un commentaire et/ou une note

 Description

Pour les besoins de mon soft, les utilisateurs ne devaient pas avoir accès à autre chose que mon appli vb, hors les raccourcis style "alt+f4" ou "ctrl+echap" ou encore la touche spéciale Windows rendait la main au bureau...

L'expérience m'a appris: lorsque tu as un problème, attaque toi à sa racine pour plus d'efficacité.
Comme je n'arrivais pas a trouver de sources simples pour désactiver le taskmanager et les raccourcis clavier, hé bien je me suis attaqué directement au bureau, et oui car sans bureau, plus de raccourcis, plus de menu démarrer, plus rien quoi. Après quelques petites recherches sur la base de registre, j'ai pu trouver mon bonheur rapidement. Je vous présente donc mon code sous  forme de fonction simple, en espérant que ça puisse servir à ceux qui comme moi n'ont pas trop envie d'utiliser des api de 3 pages pour détecter 3 ou 4 malheureuses touches...

Pour utiliser la fonction, tapez ceci dans votre code:

BloquerBureau True 'bloquera le bureau
BloquerBureau False 'débloquera le bureau et rendra la main à windows

PS: Fonctionne seulement sous XP, car je doute que les version antérieures gèrent le TSkill et qu'elles possèdent les même adresses pour les clés de registre lol

Source

  • Function BloquerBureau(Rep As Boolean)
  • 'Fonction qui désactive le bureau, soit tous les raccourcis claviers
  • 'et le menu démarrer par la même occasion
  • 'But: Empêcher les utilisateurs de faire autre chose que de travailler sur
  • ' l'appli VB afin de protéger l'ordinateur.
  • ' Utile pour les softs d'ordinateurs en libre accès comme les bornes ANPE
  • 'On déclare notre accès à la base de registre
  • Dim RegEdit As Object
  • Set RegEdit = CreateObject("WScript.Shell")
  • If Rep = True Then
  • 'Blocage bureau
  • RegEdit.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\AutoRestartShell", "0", "REG_DWORD"
  • Shell "tskill explorer" 'Tue le processus explorer.exe
  • 'Bloquer Ctrl+alt+sup (gestionnaire des taches)
  • RegEdit.regwrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskMgr", "1"
  • Else
  • 'Débloquer bureau
  • RegEdit.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\AutoRestartShell", "1", "REG_DWORD"
  • Shell "explorer", vbNormalNoFocus 'Relance le processus explorer, fait réapparaitre le bureau
  • 'Débloquer Ctrl+alt+sup
  • RegEdit.Regdelete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskMgr"
  • End If
  • End Function
Function BloquerBureau(Rep As Boolean)

'Fonction qui désactive le bureau, soit tous les raccourcis claviers
'et le menu démarrer par la même occasion

'But:   Empêcher les utilisateurs de faire autre chose que de travailler sur
'       l'appli VB afin de protéger l'ordinateur.
'       Utile pour les softs d'ordinateurs en libre accès comme les bornes ANPE

'On déclare notre accès à la base de registre
Dim RegEdit As Object
Set RegEdit = CreateObject("WScript.Shell")

If Rep = True Then

'Blocage bureau
RegEdit.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\AutoRestartShell", "0", "REG_DWORD"
Shell "tskill explorer" 'Tue le processus explorer.exe
'Bloquer Ctrl+alt+sup (gestionnaire des taches)
RegEdit.regwrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskMgr", "1"

Else

'Débloquer bureau
RegEdit.regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\AutoRestartShell", "1", "REG_DWORD"
Shell "explorer", vbNormalNoFocus 'Relance le processus explorer, fait réapparaitre le bureau
'Débloquer Ctrl+alt+sup
RegEdit.Regdelete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskMgr"

End If

End Function

 Conclusion

C'est le code le plus simple que j'ai pu faire... Si vous avez ds suggestions pour améliorer ça, n'hésitez pas: plus le code est simplifié, plus j'adore :p


 Historique

27 janvier 2006 18:32:34 :
P'tite correction du titre...

 Sources du même auteur

RÉCUPÉRER SON ADRESSE IP INTERNET (VERSION SIMPLE ET QUI FON...
TÉLÉCHARGER UN FICHIER À PARTIR D'UNE URL HTTP

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) CHIFFREMENT XOR PLUS ROBUSTE par dheroux
Source avec Zip CRYPTAGE MARANT par alpha5
Source avec Zip ACCÈS PAR MOT DE PASSE À FEUILLE EXCEL par mimiZanzan
Source avec Zip CRYPTER-DÉCRYPTER UN TEXTE - TEXTE CRYPTÉ UNIQUEMENT EN MAJ... par Saintache
Source avec Zip Source avec une capture FOLDER PROTECTION par hackoo

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture AUTORISER/REFUSER L'EXECUTION DE PROCESSUS par pierreh51
Source avec Zip Source avec une capture FLÉCHES DES ICONES DU BUREAU par Sechaud
LES DIFFÉRENTS TYPES DE RACCOURCIS EN VBS par djebbipgm
Source avec Zip Source avec une capture [VB6] TOUT SAVOIR SUR LA POSITION ET LES DIMENTIONS DE LA BA... par lermite222
Source avec Zip Source avec une capture __LINKMULE par misterwimbo

Commentaires et avis

Commentaire de mti le 27/01/2006 20:46:49

C'est bien c'est simple et éfficace! ;)

Commentaire de rootswoolf le 27/01/2006 23:14:33

C'est bien trouvé :)

Commentaire de sandrine29 le 28/01/2006 14:01:28

Coucou,

Chez moi et sous XP ça bloque seulement le gestionnaire de taches, mais c'est tout. De plus quand je lance un bloquerbureau(false) cela m'ouvre l'explorateur!?

Bye.

Commentaire de rootswoolf le 28/01/2006 16:09:02

sandrine29  , à mon avis tu dois avoir un antivirus qui bloque la fonction pour kill explorer.exe . Essaye sans av .

Commentaire de rootswoolf le 28/01/2006 16:09:06

sandrine29  , à mon avis tu dois avoir un antivirus qui bloque la fonction pour kill explorer.exe . Essaye sans av .

Commentaire de schtroumf le 29/01/2006 13:29:40

ya quand même plus simple et moins dangereux... allez dans la MMC, et ragarder tout ce qu'on peux faire dans la gestion de stratégie locale...

Commentaire de blinix123 le 30/01/2006 09:57:11

Salut
ton code m'interesse mais bon je débute, alors je fait juste un copier/coller et ca marche pas bien entendu, donc j'aimerais savoir ce qu'il faut faire en plus (module,form,...) ??
merci !

Commentaire de blinix123 le 30/01/2006 10:13:14

A ba nan c'est bon hihi!
par contre je galere trop a le modifier pour le rendre valable avec les valeurs de regedit de win2000 ou win2003server

Commentaire de tinux le 31/01/2006 19:35:10

J'ai un programme contenant plusieurs forms... ou dois-je insérer la fonction ? j'ai essayé un peu partou ça marche pas.. (il me met : instruction non valide dans un espace de noms...)

Sinon y a t-il des imports à faire ? j'utilise #Develop. Merci !

Commentaire de EvilGost le 03/02/2006 10:23:51

un peu violant de killer le process Explorer non?

Commentaire de _DoOmy_ le 17/02/2006 10:32:21

euh dsl mais j'ai pas tout compris sur le Shell "tskill explorer", c'est quoi au juste comme fonction???

Commentaire de ratala le 21/03/2006 17:27:28

C'est une commande dos : tskill pour killer un processus ( marche aussi avec taskkill je crois) et le nom de ton processus a killer ici explorer

Commentaire de soulheaven le 11/04/2006 16:37:31

Pas encore testé, mais si ça marche, c'est pile poil ce que je cherchais.

Parcontre je sais pas quel débile a déclarer ce code comme louche, pck il n'a rien de louche.

++

Commentaire de joebarteamv le 21/07/2006 14:03:10

Bonne idée et jolie fonction bien pratique!

Commentaire de frederios le 21/10/2006 22:35:24

comment je fais pour dison rafraichire les icone du buerau?

Commentaire de frederios le 21/10/2006 22:36:19

example l'equivalent d'un F5 sur le desktop?

Commentaire de ratala le 21/10/2006 23:06:13

sendkeys "{F5}"
:D

Commentaire de frederios le 22/10/2006 03:39:32

oui ca je connais mais ca vas marcher juste si le focus est sur le bureau sinon ca va le faire sur la top most window

Commentaire de ratala le 22/10/2006 10:48:07

ben tu ballence un
sendkeys "^{F4}"
en boucle 50 fois histoire de fermer toutes le fenêtres et apres tu fait
sendkeys "{F5}"
j'adore les methodes barbares xD
@+

Commentaire de frederios le 22/10/2006 15:50:13

ouin mais moi je fais du code pour le revendre. Si je fais ca pis que le client se ramasse avec un bug dans cest autre programe ou qu'il perd du data je vais etre dans la merde... merci quand meme pour ton support ratala mais je doit faire du pro pour vivre, du barbares ca mes pas du lait dans le biberon de mon bebe

Commentaire de frederios le 22/10/2006 19:31:51

toute facon faire des senkey pour un programe autre que celuis qui envoie le sendkey je touve pas ca propre. quand je fais f5 sur le bureau ca appele une fonction... moi je veux pouvoir appeler cette fonction la...

Commentaire de Neron2005 le 03/11/2006 19:02:34

C'est super bien pensé, mais ce programme admet une limite quant aux touches Maj+Tab, on peut encore choisir de modifier un programme qui est actif. Bon si on ne lance que notre programme il n'y a plus aucun probleme mais bon je tenais a le signaler, a moi que ca ne vienne de mon ordi mais j'en doute.

Commentaire de diablamanshadow le 09/11/2006 09:19:05

non neron tu as raison les touche de bascule vers d'autres fennetre fonctionne donc si ratala avais la solution (sans bloquer tous le clavier barbare qu'il est ^^) car si ses pour bloquer tous le clavier hop un blockinput et ses bon mais juste bloquer les touches voulue ^^

Commentaire de ratala le 09/11/2006 16:29:07

sinon pour rafraichir j'avai pensé éssayer de recuperer le HWND du bureau avec

Public Declare Function GetDesktopWindow Lib "user32" Alias "GetDesktopWindow" () As Long

puis de le rafraichir avec une autre API ( j'ai pas cherché mais je pense que ça devrait etre facile a trouver )

Commentaire de diablamanshadow le 10/11/2006 00:16:49

bah si tu trouve je suis prenneur :D
et si tu as d'autres option comme ca genre bloquer la souris , cacher la souris (pas que dans la form) , jouer avec les led enfin toutes des options "amusante" je suis prenneur ;-)

Commentaire de adamo901 le 10/05/2007 12:27:01

Très interessant:
bravo

Commentaire de Crassouille le 04/06/2007 21:47:10

je ne comprend pas. ca ne marche pas chez moi... il me dit que RegEdit n'est pas declaré. pourtant il y est dans le public class de form1. si quelqu'un peut m'aider... merci...

Commentaire de Sinsitrus le 11/03/2008 01:50:16

waw ! parfait !!!
Loué soit le cerveau qui a codé ça ^^

Commentaire de Sinsitrus le 11/03/2008 01:52:20

J'ai collé le code dans un Modul et j'ai écris dans le load de mon menu (la page principale) ceci :
BloquerBureau True

Et quand je clique sur quitter de mon appli je met avant End ceci :
BloquerBureau False

Ca marche chez moi, essais le :)

Commentaire de Galactus13 le 17/11/2009 16:00:10

faut pas oublier le False à la fin sinon reste plus que le plaisir des yeux et appuyer sur le bouton off !!! :)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Bloquer l'accès au bureau (Barre de tache) de Win98 avec VB6 [ par vlad ] Bonjour,Savez vous si il y a un moyen de bloquer l'accès au bureau (menu démarrer, bare de taches .....) une fois qu'un programme VB est lancé? Touche de raccourci sans menu [ par Alexandre Gauthier ] comment mettre des touche de raccourci sans faire un menu... comme ctrl-c (commande) del (commande) etcthx Comment créer un Raccourci (avec icone) sur le Bureau ? [ par Remy75 ] Quelles sont les commandes en vb6 qui permettent de créer un raccourci sur le bureau. C'est à dire, programmer ce qui correspond aux commandes manuell gerer raccourci de prg sur bureau [ par ABY ] comment creer par programme un raccourci de prg sur le bureau...et eventuellement le modifier ?merci d'avance! Raccourci sans VB5stkit.dll ? [ par peug.net ] Ce code permet de créer un raccourci vers la bureau. Mais comment utiliser la vb6 au lieu de la VB5 ?'==================Private Declare Function fCrea raccourci sur bureau [ par pou ] Je voudrais savoir s'il existe une possibilité de code VB pour trier les raccourcis du bureau Windobe à partir d'une macro d'Excel ?Merci de votre aid bloquer touche demarrer [ par T103 ] sous xp j arrive a bloquer la barre des taches mais lorsque j appui sur la touche demarrer du clavier la barre des taches lance le menu demarrrecommme Raccourci bureau qui plante avec Inno Setup [ par olivier857 ] Salut,Je m'explique j'ai un logiciel qui a besoin de repertoire présent dans le app.path pour fonctionner.J'ai créé un package avec inn Bloquer la touche 'Windows' du clavier [ par Kenou ] Bonjour,Je cherche à activer -désactiver la touche 'Windows' du clavier lorsque mon programme Vb est en train de tourner.Pouvez-vous m'aider ?Merci. AIDE!!Comment creer un raccourci sur bureau a l'instal [ par yomm ] je souhaite faire une instal et creer un raccourci sur le bureau comment faire a partir de compactage et deploiement si cela est possible???Sinon tout


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,200 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales