Raccourcis avec la touche "Windows" (claviers 105 touches)

Combinaison de touche Action
Affiche ou masque le menu Démarrer
<Attn> Affiche les propriétés système
M Réduit toutes les fenêtres
<Maj> M Restaure toutes les fenêtres
E Ouvre le poste de travail
F Recherche de fichiers
<Ctrl> F Recherche d'ordinateurs
<F1> Affiche l'aide de Windows
R Ouvre la boîte de dialogue Exécuter.
<Tab> Parcours des boutons de la barre des tâches
U Ouvre le gestionnaire d'utilitaires (Loupe, clavier visuel,..)
Affiche le menu contextuel associé à l'élément sélectionné

sommaireDéfinition des icônes des dossiers système (Poste de travail, corbeille,...)

Ces icônes sont définies dans des sous-clefs de la clef HKEY_CLASSES_ROOT\CLSID\, chaque sous-clef ayant pour nom l'identifiant de composant ActiveX correspondant. Cet identifiant est unique (et le même partout, aussi bien sous Windows 95 que sous Windows NT).
Par exemple, le Poste de travail est défini par:
HKEY_CLASSES_ROOT\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}
et l'icône associée est dans la sous-clef DefaultIcon de cette clef (p.ex. "c:\\windows\\explorer.exe,0")
Les classes ID principales sont les suivantes :

Poste de travail {20D04FE0-3AEA-1069-A2D8-08002B30309D}
Corbeille {645FF040-5081-101B-9F08-00AA002F954E}
Voisinage réseau {208D2C60-3AEA-1069-A2D7-08002B30309D}

Remarques :

Paramètres de explorer.exe

L'explorateur de Windows (explorer.exe) admet un certain nombre de paramètres et commutateurs (switches) optionnels, utilisables dans une ligne de commande (fichier batch, raccourci, commande exécuter du menu Démarrer)

Syntaxe

explorer.exe [/n][/e][,/root,<objet>][[,/select],<sous-objet>]

Commutateurs

Exemples

Ouverture d'une vue de type "Explorer" du partage C d'une machine distante de nom "Abidjan" :
explorer /e,/root,\\Abidjan\c

Ouverture du dossier P:\Program Files\Netscape\V6.2 et présélection de netscp6.exe :
explorer /select,P:\Program Files\Netscape\V6.2\netscp6.exe

Ouverture d'une vue de type "Explorer" du dossier d:\winnt\system32\drivers\etc avec affichage commençant au dossier d:\winnt\system32
explorer /e,/root,d:\winnt\system32 /select,d:\winnt\system32\drivers\etc

sommaireComment ajouter un menu contextuel "Nouveau"

Soit un type de fichier "Fichier XXX", à l'extension ".xxx", que l'on ouvre avec "notepad" (oui, je sais, ce n'est pas très original!)
On va trouver dans la BDR les clefs suivantes :

HKEY_CLASSES_ROOT\.xxx (défaut) "XXXfile"
HKEY_CLASSES_ROOT\.xxx\ShellNew (défaut) "" NullFile ""
HKEY_CLASSES_ROOT\XXXfile (défaut) "Fichier XXX"
HKEY_CLASSES_ROOT\XXXfile\shell\open\command (défaut) "notepad.exe %1"

TOUT est dans la clef "ShellNew" de "HKEY_CLASSES_ROOT\.xxx"

Contenu de HKEY_CLASSES_ROOT\.xxx\ShellNew Conséquences
vide (ou n'existe pas) rien n'apparait dans le popup menu
entrée de nom "NullFile" , avec une valeur vide ("") Fichier XXX" va apparaitre dans le menu, et si on clique dessus, il va y avoir création d'un nouveau fichier de nom "Nouveau Fichier XXX.xxx", et vide.
entrée de nom "Filename" , avec une valeur chaine (un nom de fichier avec chemin complet)
p.ex.: "d:\schtroumpf\plops.zzz"
"Fichier XXX" va apparaitre dans le menu, et si on clique dessus, il va y avoir création d'un nouveau fichier de nom "Nouveau Fichier XXX.xxx", rempli au départ avec le contenu du fichier "d:\schtroumpf\plops.zzz", qui sert de modèle en quelque sorte.
entrée de nom "Data" , avec une valeur chaine quelconque.
p.ex.: "Je suis le meilleur!")
"Fichier XXX" va apparaitre dans le menu, et si on clique dessus, il va y avoir création d'un nouveau fichier de nom "Nouveau Fichier XXX.xxx", rempli avec la chaine "Je suis le meilleur!"

Si plusieurs de ces entrées sont présentes :

Par ailleurs, le contenu de l'entrée "NullFile" peut être quelconque (vide ou n'importe quoi d'autre, ce sera toujours un fichier vide qui sera créé)
Donc, pour faire disparaitre un type de fichier dans le menu "nouveau", il suffit de supprimer la clef "shellnew" dans l'extension correspondante.

sommaireIcône de fichier bitmap égale au bitmap lui-même en réduction

  1. Examiner le contenu xxxxxx de la clef HKEY_CLASSES_ROOT\.bmp (p.ex. xxxxxx="bmpfile")
  2. Se positionner sur la clef HKEY_CLASSES_ROOT\xxxxxx\DefaultIcon
  3. Remplacer la valeur par défaut (p.ex."c:\windows\pbrush.exe,0") par %1

Commentaires : c'est très coûteux en temps CPU dans le cas de "gros" bitmaps

Désactivation de la flèche des raccourcis

A l'aide de REGEDIT.EXE, editer les clefs suivantes :

et supprimer, dans chaque cas, l'entrée "IsShortCut"

(Re)Création de l'icône "Bureau" dans le "Quick Launch"

Le "Quick Launch" (= lancement rapide) est une zone de la barre de tâches située immédiatement à droite du bouton démarrer, installée conjointement avec IE4 (sous Windows 95 et Windows NT4) ou nativement (sous Windows 98 et Windows 2000). Elle contient un certain nombre de boutons permettant le lancement rapide d'applications. Elle correspond au dossier suivant :

Système Dossier
Windows 2000 \Documents and Settings\<utilisateur>\Application Data\Microsoft\Internet Explorer\Quick Launch
Windows NT4 \winnt\<utilisateur>\Données d'applications\Microsoft\Internet Explorer\Quick Launch
Windows 9x \windows\Profiles\<utilisateur>\Application Data\Microsoft\Internet Explorer\Quick Launch

Ces boutons sont généralement des raccourcis habituels (fichiers .lnk) mais sont parfois d'autres objets, tels que des commandes de l'explorateur Windows (fichiers .scf), dont le plus connu est le bouton "Bureau", très pratique, puisqu'il permet d'iconifier ou de restaurer en seul click toutes les fenêtres ouvertes. 

Il peut arriver que ce bouton disparaisse (suite à une fausse manœuvre).
Voici le mode opératoire pour le recréer :

  1. A l'aide d'un éditeur de texte quelconque (le bloc-notes p.ex.), créer un fichier contenant les lignes suivantes :
    [Shell]
    Command=2
    IconFile=explorer.exe,3
    [Taskbar]
    Command=ToggleDesktop
  2. Enregistrer ce fichier sous un nom quelconque, mais ayant obligatoirement l'extension .scf, par exemple  Mon Bureau.scf , et le placer dans le dossier "Quick Launch"
    On peut également le placer n'importe où ailleurs, mais dans ce cas il faudra créer un raccourci que l'on placera finalement dans le dossier Quick Launch. Cette 2ème méthode permet de modifier facilement le nom qui apparaîtra dans la barre et/ou l'icône associée

De la même façon, on peut (re)créer un bouton d'affichage des chaînes ou favoris dans Internet Explorer en suivant la procédure suivante :

  1. A l'aide d'un éditeur de texte quelconque (le bloc-notes p.ex.), créer un fichier contenant les lignes suivantes :
    [Shell]
    Command=3
    IconFile=shdocvw.dll,-118
    [IE]
    Command=Channels
  2. Enregistrer ce fichier sous un nom quelconque, mais ayant obligatoirement l'extension .scf, par exemple  Mes Favoris.scf , et le placer dans le dossier "Quick Launch".

sommaireCréation d'un sous-menu "Panneau de configuration" dans le menu "Démarrer"

L'accès à un sous-ensemble du panneau de configuration s'effectue généralement en cliquant sur "Menu Démarrer", puis "Paramètres", puis "Panneau de Configuration". Ensuite la fenêtre du panneau de configuration s'ouvre, et c'est seulement à cet instant que l'on peut accéder, par exemple, à la configuration Réseau, ou au réglage de l'Affichage,...Cela peut être fastidieux, surtout si beaucoup de fenêtres sont déja ouvertes.

On peut insérer un sous-menu contenant tous les items du panneau de configuration avec la méthode suivante :

  1. Cliquer avec le bouton droit le menu Démarrer et choisir Ouvrir, ce qui provoque l'ouverture du dossier "Menu Démarrer".
  2. Créer alors un dossier strictement nommé ainsi (ne pas oublier le point) :
    Panneau de configuration.{21EC2020-3AEA-1069-A2DD-08002B30309D}

    La chaine "Panneau de..." est le nom du dossier système Panneau de configuration et la chaine "21EC..." est son n° de Classe ID, que l'on peut retrouver de manière analogue à celui du Poste de travail, de la Corbeille, ...

  3. Fermer le dossier. Un nouveau sous-menu a été créé !

Remarques:

sommaireRafraîchissement automatique de l'Explorateur

Par défaut,  lorsque l'on efface un fichier, crée un nouveau dossier, ..., l'affichage ne se rafraîchit pas instantanément dans l'explorateur, à moins qu'on le provoque en appuyant sur la touche F5.
Il est possible de rendre toute modification immédiatement visible, en modifiant l'entrée UpdateMode de type DWORD dans la clef :

valeur 0x00000000 = mise à jour différée (valeur par défaut)
valeur 0x00000001 = mise à jour immédiate

Il suffit de fermer toute fenêtre de l'explorateur puis de le relancer pour que le changement soit pris en compte.

hand_right.gif (969 octets)Cette méthode semble ne pas fonctionner sous Windows 95/98, mais seulement sous Windows NT

sommaireAffectation d'une commande commune à tous les types de fichiers non enregistrés

On désire disposer dans le menu contextuel de l'explorateur (click droit) une commande commune dans le cas de fichier sélectionné non enregistré (extension inconnue). Par exemple, lancer directement un éditeur hexadécimal, dont le fichier exécutable serait "d:\tools\hexedit.exe"

Il suffit de créer les 3 clefs suivantes (si elles n'existent pas déja) :

La commande "Edition hexa" apparait alors dans le menu contextuel de l'Explorer chaque fois que l'on sélectionne un fichier à extension inconnue (p.ex ".diz", ".is0", ....). Cet item est situé juste en dessous de la commande "Ouvrir avec"

sommaireProtection des types de fichiers enregistrés

Dans le cas d'un PC pouvant être utilisé par plusieurs personnes, il peut être souhaitable de restreindre les droits de modification des types de fichiers enregistrés (depuis l'explorateur, menu options). Cela s'obtient par la création (ou modification) d'une entrée supplémentaire EditFlags dans la clef HKEY_CLASSES_ROOT\xxxxxxx (xxxxxxx désignant le type de fichiers à protéger). Cette clef est un champ 16 bits qui peut valoir une ou plusieurs (par un "OU" logique binaire) des valeurs suivantes:

Valeur
hexa

Conséquence

0001 Masque le type dans la liste des extensions enregistrées
0008 Désactive le bouton "Modifier" dans l'onglet "Types de fichiers"
0010 Désactive le bouton "Supprimer" dans l'onglet "Types de fichiers"
0020 Désactive le bouton "Nouveau" dans la boite de dialogue "Modification du type de fichier"
0040 Désactive le bouton "Modifier" dans la boite de dialogue "Modification du type de fichier"
0080 Désactive le bouton "Supprimer" dans la boite de dialogue "Modification du type de fichier"
0100 Désactive la zone de texte "Description du type" dans la boite de dialogue "Modification du type de fichier"
0200 Désactive le bouton "Changer d'icône" dans la boite de dialogue "Modification du type de fichier"
0400 Désactive le bouton "Définir par défaut" dans la boite de dialogue "Modification du type de fichier"

Exemple : On veut désactiver, pour les fichiers d'extensions .htm et .html (qui pointent vers htmfile) :

On crée alors dans la clef HKEY_CLASSES_ROOT\htmlfile une nouvelle entrée de nom EditFlags, de type DWORD et de valeur 0210

Lancement automatique d'un exécutable ou d'un script dans une fenêtre de commandes

On est souvent amené à lancer des exécutables en mode console (ipconfig, netstat, nbtstat,...), mais si on le fait directement depuis l'explorateur de Windows et que ces exécutables n'attendent pas de saisie au clavier, la fenêtre s'ouvre, puis se referme aussitôt!

Il en est de même de certains scripts VBS.

Il faut donc commencer par ouvrir une fenêtre de commandes (cmd.exe), puis taper la commande voulue, ce qui n'est pas très pratique.
Afin de remédier à cet inconvénient, j'ai conçu un petit script (lui-même écrit en VBScript) qui, étant associé aux fichiers .exe, va ouvrir automatiquement une fenêtre de commande puis exécuter dedans l'exécutable choisi depuis l'explorateur de Windows.

VBScript est installé en standard sous Windows 98, ME, 2000, XP.
Il faut l'installer volontairement sous Windows 95 et NT4.
Pour plus de détails sur VBSCRIPT, se reporter aux chapitres qui lui sont consacrés.

En voici le code, très simple :

Pour que ce script soit utilisable depuis l'explorateur de Windows, il faut modifier et ajouter certaines clefs dans la Base de Registres. Cela est obtenu automatiquement en l'exécutant sans paramètres

Téléchargement console.vbs (2ko

Après installation, un nouvel item apparaît dans le menu contextuel des exécutables : 

Si on sélectionne cet item, une boite de dialogue de saisie (facultative) de paramètres apparaît :

puis l'application est lancée dans une fenêtre de commandes permanente.

Impossibilité d'installer une nouvelle police de caractères

Le problème suivant peut survenir sous toute version de Windows.
On souhaite installer une nouvelle police de caractères, mais l'item "Installer une nouvelle police..." n'apparaît plus!


Ce problème est décrit dans l'article Q133725 de la Knowledge Base du MSDN ("Missing Menu Commands in the Fonts Folder")

3 causes possibles :
Causes Solutions
Le dossier "fonts" n'a plus les attributs  "System" et "Read Only"
(or cela est OBLIGATOIRE!)
  1. Ouvrir une fenêtre de commandes
  2. Se placer dans le répertoire %systemroot%
  3. Taper la commande :
      
    attrib +s +r fonts
Le fichier "%systemroot%\system32\fontext.dll" manque ou est endommagée.

Il faut la récupérer depuis le CD de Windows.

  1. Ouvrir une fenêtre de commandes
  2. Taper la commande :
    expand x:\i386\fontext.dl_ %systemroot%\system32\fontext.dll
    (en supposant que "x:" désigne le lecteur de CD)
le fichier "%systemroot%\fonts\desktop.ini" manque ou est endommagé.
ATTENTION !
ce fichier n'apparaît pas dans l'explorateur de Windows!
  1. Ouvrir une fenêtre de commandes
  2. Se placer dans le répertoire  "%systemroot%\fonts"
  3. Taper la commande
    attrib -r -h -s desktop.ini
    puis (p.ex.) notepad desktop.ini
    Il doit contenir ceci :
    [.ShellClassInfo]
    UICLSID={BD84B380-8CA2-1069-AB1D-08000948F534}  
Sous Windows 95,98 ou ME, remplacer  %systemroot% par %windir%   et  system32 par system

Affecter une icône personnalisée à un dossier

Principe

Cette fonctionnalité est apparue avec Internet Explorer 4.0

Elle permet de personnaliser l'explorateur de Windows (toute version), en attribuant une icône spécifique à un dossier donné, en remplacement de l'icône habituelle des dossiers :

Pour cela, il suffit de créer dans le dossier concerné un fichier nommé DESKTOP.INI, au format texte, possédant les attributs caché et système (HS), et contenant le paragraphe suivant (exemple) :

Contenu Commentaires
[.ShellClassInfo] Nom du paragraphe (obligatoire)
IconFile=F:\Program Files\Microsoft FrontPage\Office\FRONTPG.EXE Nom du fichier contenant l'icône :
Exécutable, DLL, Contrôle ActiveX, Driver, fichier icône,..
IconIndex=17 N° de l'icône dans le fichier
ConfirmFileOp=0 Commutateur  mis à zéro évitant un message de confirmation si on supprime le fichier desktop.ini
InfoTip=Frontpage XP Information facultative apparaissant dans la barre d'état de l'explorateur quand le dossier est sélectionné

Dans cet exemple, l'icône choisie est la suivante :

L'explorateur Windows affiche alors ceci :

Bien que peu compliquée, l'opération de créer un fichier DESKTOP.INI,  choisir une icône appropriée, trouver son index, penser à définir les attributs du fichier DESKTOP.INI....est assez fastidieuse.

Cas de Windows XP

Ce mécanisme a été amélioré dans Windows XP, chaque dossier possédant  dans ses propriétés un onglet "Personnaliser":
 

Mais cette fonctionnalité n'a pas prévu la définition de l'information complémentaire (champ InfoTip), et elle oblige à chaque fois de parcourir, plus ou moins à l'aveuglette, les fichiers susceptibles de contenir des icônes.

Automatisation avec "ICONFOLDER"

(mise à jour le 23/10/02)

J'ai conçu une application intitulée ICONFOLDER qui réalise automatiquement  les tâches suivantes :

Cette application fonctionne sous toute plate-forme Windows.
Il suffit que Internet Explorer version 4 au minimum ait été installé.
Elle a été validée sous :

Elle se compose :

En ce qui concerne les fonctions "icônes" du contrôle ActiveX, je me suis inspiré d'un exemple tiré de l'excellent ouvrage

"Windows Scripting Secrets"
de Tobias Weltner
édité chez IDG BOOKS
(ISBN=0-7645-4684-8)

Installation

Il suffit d'exécuter l'un des deux fichiers :

(voir les différences entre les versions  plus bas)

Différentes boite de dialogues s'affichent :

...
pour aboutir à 2 messages indiquant l'installation des deux scripts iconfolder.vbs et RAZiconfolder.vbs

Désormais, le menu contextuel d'un dossier affiche deux items supplémentaires :

Le contrôle ActiveX jcb.ocx a besoin de la bibliothèque VisualBasic msvbvm50.dll , normalement présente sur toutes les machines, ainsi que du contrôle ActiveX comctl32.ocx. Au cas où ces fichiers seraient absents, ils ont été prévus dans le programme d'installation (d'où sa taille) et seront installés si besoin est.

Utilisation (ajout d'icône)

Il suffit d'afficher le menu contextuel (clic droit) sur un dossier et de sélectionner "Icône de dossier (ajout)"

Deux cas se présentent alors:

  1. Aucune analyse de disque n'a encore eu lieu
     
    Une boite de dialogue s'affiche, indiquant la liste des disques à analyser :

    Sélectionner le ou les disques concernés, et appuyer sur OK

    Seuls les disques fixes et locaux sont affichés.

    L'analyse a alors lieu, avec affichage de la progression. 

    Certains dossiers sont volontairement ignorés :
    - dllcache
    - temp et tmp
    - system volume information
    - recycled

    - ceux dont le nom commence par "$"

    En cas de doublons, seul le fichier ayant le plus grand nombre d'icônes est mémorisé


  2. Les disques ont déjà été analysés
     
    Une boite de dialogue s'affiche, demandant si on veut :
    • conserver l'analyse actuelle (la liste des icônes est conservée)
    • mettre à jour cette analyse (dans le cas où d'autre partitions n'ont pas encore été analysées)
    • remplacer l'analyse déjà faite (elle sera alors intégralement refaite)

  3. Ensuite, dans les deux cas :

    Une liste des fichiers contenant des icônes s'affiche :

    Cliquer sur l'un d'entre eux pour voir son contenu :

    (par exemple compstui.dll)

     

    Sélectionner une icône et appuyer sur OK.

    Si aucune ne convient, appuyer sur Annuler , ce qui provoque le réaffichage de la liste précédente.

    Certains fichiers peuvent provoquer l'affichage d'un message d'erreur, indiquant que le fichier ne contient pas d'icônes. C'est le cas par exemple de "sandra.exe" (SiSoftware). Cela est du à une  structure interne utilisant des ressources avec un format non standard

    Ce défaut n'est pas imputable à Iconfolder (Windows lui-même et les éditeurs de ressources détectent le même problème).

    Une boite de dialogue invitant à définir une information complémentaire s'affiche.

    Le contenu par défaut est de la forme
    Dossier <nom du dossier>

    Appuyer sur OK.

    Il y a alors confirmation d'affectation de l'icône.  
Utilisation (retrait d'icône)

Il suffit d'afficher le menu contextuel (clic droit) sur un dossier et de sélectionner "Icône de dossier (retrait)"
Deux cas se présentent alors:

  1. Le dossier sélectionné n'a pas d'icône personnalisée

     
    Un message est affiché :


     

  2. Le dossier sélectionné a une icône personnalisée
     
    La confirmation de suppression est demandée :
    Si on a répondu oui :
Distribution

ICONFOLDER existe en 2 distributions :

Version Remarques Taille de
l'exécutable
Date du
fichier
Téléchargement
Complète
 
Elle comprend les fichiers
- comctl32.ocx
- msvbvm50.dll
1076 ko 23/10/02 iconfolder
Minimale
 
Vous devez avoir les fichiers
- comctl32.ocx
- msvbvm50.dll
(c'est généralement le cas)
163 ko 23/10/02 iconfolder

Codes source du contrôle ActiveX jcb (VB)

L'usage de ICONFOLDER est entièrement gratuit!

Restauration de l'affichage des miniatures dans l'explorateur

L'affichage des miniatures dans l'explorateur de Windows est une fonctionnalité disponible quand Active Desktop est activé et quand on a sélectionné "Miniatures" dans le menu Affichage .
Cela permet de prévisualiser des fichiers images ayant les extensions suivantes : Mais il peut arriver pour une raison inconnue que cet affichage ne se fasse plus, alors que les conditions initiales sont pourtant bien remplies (Active Desktop activé, Affichage des miniatures sélectionné dans l'explorateur) :
 
On constate dans cet exemple que seuls les fichiers .gif sont affichés en miniatures.
 

Les fichiers .jpg apparaissent seulement sous la forme d'icônes.

Ce défaut est dû à la corruption ou disparition de clefs et/ou valeur dans la Base de Registres :
La valeur par défaut de la clef :
    HKEY_CLASSES_ROOT\.xxx\ShellEx\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}

    (".xxx" étant l'extension concernée)
doit être égale à :
    {7376D660-C583-11d0-A3A5-00C04FD706EC}


Pour information, ces deux identifiants (GUID) correspondent à :
{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1} interface  IExtractImage
{7376D660-C583-11d0-A3A5-00C04FD706EC} contrôle ActiveX  TridentImageExtractor,
contenu dans %SystemRoot%\System32\browseui.dll

Il suffit donc de recréer ou corriger cette clef et sa valeur par défaut, et l'affichage des miniatures est aussitôt rétabli.

J'ai conçu un script VBS restorepreview.vbs qui effectue automatiquement :

Après son exécution, l'affichage des miniatures est redevenu pleinement opérationnel :