Actualiser le cache d'icônes sans redémarrer

173

Normalement, pour actualiser le cache d'icônes dans Windows, nous devons redémarrer.

Est-il possible d'actualiser le cache d'icônes dans Windows 7/8 sans redémarrer ?

Elmo
la source
1
Qu'as-tu essayé? Qu'est-il arrivé? Pourquoi en avez-vous besoin? Parlez-vous de l'Explorateur Windows, du menu Démarrer, de la barre des tâches, où? Besoin de plus d'informations
Canadian Luke
1
Oui je l'ai fait ... Et c'est pourquoi je demande des éclaircissements. Je l'ai vu dans la file d'attente des critiques, je ne lis donc plus que les réponses, mais rappelez-vous que ce site est également conçu pour aider les visiteurs de Google ou d'autres moteurs de recherche.
Canadian Luke
1
Normalement, lorsque nous actualisons le cache d'icônes dans Windows, nous devons redémarrer, mais ma question et ma réponse le font sans redémarrage. blog.stackoverflow.com/2011/07/…
Elmo
J'ai trouvé ce Q via Google en décembre 2017. Merci de l'avoir posté. J'ai aimé la réponse où il est dit de faire le fichier de commandes court. Donc, dans les commentaires, j'ai inclus le processus de le faire. Maintenant, mes icônes Win8.1 sont corrigées. MERCI. EXCELLENTE QUESTION.
SDsolar

Réponses:

287

Oui.

Vous pouvez simplement exécuter la commande suivante pour effacer le cache d'icônes:

ie4uinit.exe -ClearIconCache

Pour Windows 10, utilisez:

ie4uinit.exe -show

Regardez cette vidéo pour une démo.

[crédit de pointe]

Elmo
la source
5
Ne fonctionne pas sous Windows 8.1. Vous devez supprimer IconCache.db comme expliqué par @ Techie007.
Helge Klein
4
Ne semble pas fonctionner pour moi dans Windows 7
Joris Groosman
1
travaillant sur windows 7 Pro
deadfish
6
Pour Windows 10, utilisez l’argument "show", mentionné dans la même page (crédit de pourboire).
w32sh
3
@Crazy Est-ce juste une doublure? SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, NULL, NULL);
Elmo
37

La manière suivante a fonctionné depuis Vista; Il nécessite un redémarrage de l'explorateur, mais pas de redémarrage.

Version abrégée : arrêtez toutes les explorer.exeinstances, supprimez le IconCache.dbfichier caché de l'utilisateur et redémarrez Explorer.

Version longue (il y a aussi d'autres moyens):

  1. Fermez toutes les fenêtres de l'explorateur actuellement ouvertes.

  2. Lancez le Gestionnaire de tâches à l’aide de la séquence de touches CTRL+ SHIFT+ ESCou en le lançant taskmgr.exe.

  3. Dans l' onglet Processus , cliquez avec le bouton droit sur le explorer.exeprocessus et sélectionnez Terminer le processus .

  4. Cliquez sur le bouton Terminer le processus lorsque la confirmation vous est demandée.

  5. Dans le menu Fichier du Gestionnaire des tâches , sélectionnez Nouvelle tâche (Exécuter…).

  6. Tapez CMD.EXEet cliquez sur OK

  7. Dans la fenêtre d'invite de commande, tapez les commandes une par une et appuyez ENTERaprès chaque commande:

    CD /d %userprofile%\AppData\Local
    DEL IconCache.db /a
    EXIT
    
  8. Dans le Gestionnaire des tâches , cliquez sur Fichier , sélectionnez Nouvelle tâche (Exécuter…).

  9. Tapez EXPLORER.EXEet cliquez sur OK.

source d'étapes d'instruction

Avertissement : Il est important que Explorer.exe ne soit pas en cours d'exécution lorsque vous supprimez le fichier IconCache.db. Si explorer est en cours d'exécution, il écrira simplement les icônes actuelles (corrompues) lors de sa prochaine fermeture (par exemple, lorsque vous vous déconnecterez, vous éteindrez ou redémarrez).

Ƭᴇcʜιᴇ007
la source
Génial, cela fonctionne pour toutes les icônes de fenêtres, même celles de configuration. D'autres méthodes ne réinitialisent que les iconcs à partir de fichiers et de dossiers
mikl
Ce que j’ai remarqué récemment, c’est que le fichier IconCache.db n’existe souvent pas nécessairement, mais le simple redémarrage de explorer.exe comme décrit ci-dessus résout également le problème.
Anre
1
Cette réponse mérite tous les votes positifs et la coche acceptée. IMO
micsthepick
16
  1. Ouvrir la console de commande avec les privilèges d'administrateur
  2. taskkill /IM explorer.exe /F
  3. CD /d %userprofile%\AppData\Local
  4. DEL IconCache.db /a
  5. démarrer explorer.exevia le gestionnaire de tâches
Ours Grincheux
la source
1
travaillé pour moi, Win 8.1
Spike0xff
6

Il existe un moyen propre de fermer l' Explorer.exeinstance qui affiche la barre des tâches et les icônes du bureau.

Vous devez Shutdownafficher la fenêtre de dialogue classique . La seule manière courante que j'ai trouvée pour accomplir ceci est:

  1. Laissez au moins un pixel de l’arrière-plan du Bureau exempt de fenêtres superposées, puis cliquez dessus pour faire le focus sur le Bureau lui-même (celui avec les icônes).

  2. Appuyez sur Alt+ F4raccourci clavier: la boîte de dialogue classique d'arrêt apparaîtra.

  3. Maintenant, appuyez et maintenez CTRL + ALT + MAJ cliquez sur Cancel.

the.reversengineer
la source
Pourquoi ça marche? Qu'est-ce que CTRL + ALT + MAJ cliquer sur Annuler fait?
Dean Meehan
2
En outre, ouvrez le menu Démarrer de Windows 7, maintenez la touche Ctrl-Maj enfoncée et cliquez avec le bouton droit de la souris sur l’espace vide au-dessus du bouton Arrêter / Fermer la session / Redémarrer (selon votre configuration par défaut). Un menu apparaît avec "Exit Explorer" en option. Cliquez dessus et l'explorateur se termine.
Fran
Si vous utilisez le truc startmenu de Windows 7, il est important de vous assurer de fermer TOUTES les File Explorerfenêtres en premier! Ensuite, vous pouvez à Exit Explorerpartir du menu Démarrer de Windows 7. Première invite de commande. Cliquez ensuite sur le menu de démarrage, maintenez Ctrl+Shiftle Shutdownbouton de la souris enfoncé et cliquez avec le bouton droit de la souris au-dessus du bouton pour afficher l' Exit Exploreroption de sous-menu, puis cliquez dessus. Dans l'invite de commande, tapez CD /d %userprofile%\AppData\Localpuis tapez del IconCache.db /aet le dernier type explorer.
Arvo Bowen
Pour récupérer votre menu de démarrage, ctrl + alt + explorer.exe
suppr
Appuyez Winet relâchez-le. Puis deux fois Alt+F4 . Cette méthode est plus rapide et vous n'avez pas besoin de voir une partie du bureau pour ouvrir le menu d'arrêt classique.
cdlvcdlv
6

Créez un fichier .bat et collez-y les lignes suivantes, puis exécutez-le.

taskkill /f /im explorer.exe
cd /d %userprofile%\AppData\Local
del IconCache.db /a
start explorer.exe
farukdgn
la source
C'est super. Fonctionne bien dans Win8.1 Rapide et facile. Et avec les paramètres "QuickEdit" et "Exécuter en tant qu'administrateur" dans l'icône CMD de la barre des tâches, j'ai pu créer le fichier chauve-souris en copiant simplement votre texte ci-dessus, puis en cliquant sur l'icône CMD. TYPED copy con clearcache.batpuis appuyez sur Entrée, puis clic droit pour le coller dans. Encore Entrez ensuite une finition Ctrl-Z le travail de création du fichier. Puis j'ai tapé clearcachepour l'exécuter. Windows clignotait et toutes les icônes étaient corrigées. A pris un total de 30 secondes pour le correctif entier. MERCI. EXCELLENTE RÉPONSE.
SDsolar
2

Si vous ne voulez pas faire de .bat, copiez la ligne derrière, appuyez sur Win+ R, collez-la et appuyez sur Enter.

cmd /c taskkill /f /im explorer.exe & del /a %userprofile%\AppData\Local\IconCache.db & start explorer

Vous pouvez également le coller dans la barre d'adresse d'une fenêtre de l'explorateur. et, bien sûr, dans une fenêtre de ligne de commande (vous n’avez pas besoin d’ cmd /calors) mais vous n’avez pas la ligne pour la répéter facilement au cas où vous en auriez besoin à nouveau.

CAVEAT :

N'exécutez pas cette ligne dans une invite élevée sauf si vous êtes certain d'être le seul utilisateur du système ou de tuer l'explorateur dans toutes les sessions ouvertes . Par conséquent, n'appuyez pas sur Shift+ Ctrl+ Enterdans la boîte de dialogue Exécuter .

En passant, je ne vois pas le besoin de la cd /dcommande que je vois à plusieurs reprises. Il semble que tout le monde se contente de copier / coller sans se demander à quoi servent les commandes.

Remarque:

J'utilise &au lieu de &&juste au cas où l'une des commandes échouerait, pour s'assurer que l'explorateur est redémarré.

cdlvcdlv
la source
0

Bien qu’il ne s’agisse pas d’une réponse utilisateur, un simple appel

SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, NULL, NULL);

fait cela [1]. Peut-être que quelqu'un créerait un utilitaire pour faire exactement cela; actuellement, utiliser 7-zip et essayer de modifier les associations de fichiers (pour tous les utilisateurs; sans élévation d'autorisations; ce qui échouerait et indiquerait que l'opération échouait) appelle les notifications et reconstruit le cache d'icônes.

Oh, je viens de voir les commentaires à la réponse acceptée, où l'appel est discuté, et un outil pour cela est mentionné: https://github.com/crazy-max/IconsRefresh .

[1] https://docs.microsoft.com/en-us/windows/desktop/api/shlobj_core/nf-shlobj_core-shchangenotify

Mike Kaganski
la source
-1

Si vous souhaitez un cache d'icônes actualisé complet, accédez à la barre d'adresse de l'explorateur Windows et tapez "C: \ Utilisateurs * Nom d'utilisateur * \ AppData \ Local", puis supprimez IconCache.db.

** Remarque: ** Il peut s'agir d'un fichier caché. Je recommande donc d'activer l'option Afficher les fichiers cachés dans l'option Dossier.

Blackie Holeberger
la source
1
Veuillez relire attentivement la question. Votre réponse ne répond pas à la question initiale.
DavidPostill
-1

Pas très beau mais efficace:

C:> tskill explorer

Beau Key
la source
1
Ce n'est pas assez. Vous devez également supprimer la base de données icon cache. Dans tous les cas, l’explorateur tueur est déjà couvert par les autres réponses.
DavidPostill