La ligne de commande rundll32 impliquant inetcpl.cpl et le point d'entrée ClearMyTracksByProcess
largement utilisé depuis Internet Explorer 7, n'est efficace que si elle est exécutée avec un faible niveau d'intégrité. En effet, dans Windows Vista et versions ultérieures, Internet Explorer gère deux conteneurs de cache différents, un pour le mode protégé et un autre dossier de cache pour stocker les fichiers lorsque Internet Explorer est en dehors du mode protégé.
Lorsqu'un utilisateur exécute la commande suivante afin de vider le cache:
RunDll32.exe InetCpl.cpl, ClearMyTracksByProcess 8
La commande s'exécute avec un niveau d'intégrité moyen et efface donc uniquement le dossier de cache pour les sites Web visités en dehors du mode protégé. Alors que tous vos fichiers de cache sont dans la zone du mode protégé, c'est dans le répertoire Low .
Afin de vider correctement le cache, vous devrez réexécuter la même commande mais cette fois, lancez-la en niveau d'intégrité faible. C'est exactement ce que fait Internet Explorer lorsque vous essayez de vider le cache via les options de menu. Cela ressort clairement du graphique suivant.
Comment vider le cache d'Internet Explorer à l'aide de la ligne de commande?
Pour effacer correctement le cache des fichiers Internet temporaires d'Internet Explorer, utilisez l'une de ces options.
Option 1: utilisation de PsExec.exe
Utilisez à partir de Windows SysInternals pour lancer Rundll32.exe avec un faible niveau d'intégrité. Téléchargez PsExec.exe à partir de Windows SysInternals et enregistrez-le dans un emplacement pratique. Pour effacer le cache IE, exécutez cette commande:
\ psexec.exe -lc: \ windows \ system32 \ RunDll32.exe InetCpl.cpl, ClearMyTracksByProcess 8
Exemple:
c: \ tools \ psexec.exe -lc: \ windows \ system32 \ RunDll32.exe InetCpl.cpl, ClearMyTracksByProcess 8
Merci à magicandre1987 de StackOverflow pour l'astuce PsExec.
Option 2: effectuez une copie de Rundll32.exe et définissez-le pour qu'il s'exécute avec un IL faible
Ouvrez votre répertoire Windows \ System32. Faites une copie de rundll32.exe et nommez la copie comme rundll32-low.exe
Maintenant, ouvrez une invite de commande élevée ou administrateur et tapez:
icacls rundll32-low.exe / setintegritylevel low
Vous devriez «voir les 1 fichiers traités avec succès» dans la sortie.
En option, notez l'espace disque consommé par le répertoire Temporary Internet Files \ Low d'Internet Explorer, c'est là que le vrai cache (pour le mode protégé) est stocké.
Appuyez sur WinKey + R et tapez la ligne de commande pour effacer le cache IE, mais cette fois en utilisant rundll32-low.exe .
RunDll32-low.exe InetCpl.cpl, ClearMyTracksByProcess 8
Cela fait parfaitement l'affaire. Voici.
Vous pouvez également créer un raccourci vers la ligne de commande ci-dessus si vous le souhaitez.
Remarque: La méthode ci-dessus présente un petit inconvénient. Le processus rundll32-low.exe efface parfaitement le cache, mais ne se ferme pas proprement. Le processus apparaît dans le Gestionnaire des tâches jusqu'à ce que vous le quittiez manuellement. Cela ne devrait cependant pas affecter les performances.