sábado, 4 de septiembre de 2010

Cache de íconos del Explorador de Windows

Normalmente este problema no lo veo en mi propia PC, pero el otro día sí me pasó a mí y se me ocurrió escribir sobre ello en mi Blog.

A veces ocurre que iniciamos sesión en Windows y nos encontramos con ciertas irregularidades en cómo se muestran los íconos en el escritorio o al navegar por los directorios. Sobre todo ocurre con accesos directos a aplicaciones, y cuando intentamos solucionarlo haciendo clic secundario sobre el ícono del programa, yendo a propiedades y tratando de re aplicar el ícono que viene como recurso en el ejecutable nos sale un mensaje de error diciendo que el archivo ejecutable en cuestión no pudo ser hallado por Windows pero el mismo aparece si navegamos hasta su ubicación, probablemente en el directorio Archivos de programa.

Cuando esto ocurre algo a intentar es borrar la caché de íconos del explorador de Windows para que la misma sea creada otra vez desde cero.

El archivo se llama IconCache.db. El procedimiento más sencillo para eliminarlo consiste en matar el proceso explorer.exe, borrar el archivo IconCache.db del usuario actual y reiniciar explorer.exe. Para hacer todo esto, lo más sencillo es usar la terminal.

En Windows Vista y 7 damos clic en inicio y ponemos en el buscador cmd y damos enter una vez que aparece cmd.exe en la lista de resultados. Entonces escribimos:

taskkill -f -im explorer.exe
del /A:H %UserProfile%\AppData\Local\IconCache.db
start explorer.exe

Para Windows XP cambia la ruta del archivo y además es dependiente del idioma de la instalación. Asumiendo que tenemos XP en español, sería así:

taskkill -f -im explorer.exe
del /A:H "%UserProfile%\Configuración local\Datos de programa\IconCache.db"
start explorer.exe

Debe hacerse en la sesión que tiene el problema, ya que hay un IconCache.db por usuario.

¿Nuestro XP no está en español?

Una cosa que está resuelta en Windows 7 es el tema de los directorios que cambian según el idioma de la instalación. Si navegamos por nuestra partición de Windows con un Live CD de Linux encontraremos que directorios como Program files están en inglés aunque se muestren en el explorador de Windows en el idioma que hayamos configurado para mostrar.

Lamentablemente en Windows XP no ocurre lo mismo. Si no encontramos la ruta a nuestro archivo IconCache.db propongo que la obtengamos ejecutando el siguiente comando en la terminal:

reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Local AppData"

Esto produce una salida similar a la siguiente:

! REG.EXE VERSION 3.0

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders

Local AppData    REG_SZ    C:\Documents and Settings\[Usuario]\Configuración local\Datos de programa

Esta ruta ya incluye los directorios en el idioma en que fue instalado Windows. Ahora que sabemos la ruta al directorio que contiene el archivo IconCache.db ya podemos proceder a eliminarlo como está escrito más arriba.

No vamos a iniciar regedit por algo como esto, la terminal es más rápida, además de que podemos copiar y pegar tal cual está en esta entrada.

5 comentarios:

Phileas dijo...

Gracias

Anónimo dijo...

Hola, entonces podemos borrar IconCache.db, sin problema alguno pues este se vuelve a a crearse automaticamente, pero en windows xp sp2 se puede volver a crear o solo en windows 7. en lo personal yo lo quiero eliminar para aprovechar espacio, ¿puedo?

JH dijo...

Es seguro borrar el archivo IconCache.db pues el Windows Explorer lo volverá a crear la siguiente vez que se ejecute. No creo que borrarlo pueda mejorar significativamente la salud de tu disco duro, mi actual IconCache.db tiene casi un año de creado y pesa solo 3,3 MB. Yo lo borraría sólo si sospecho corrupción de datos.

Anónimo dijo...

yo tengo una pregunta yo e eliminado este archivo sin tener que detener el explorer.EXE y cuando apago la PC y la vuelvo a encender aparese nuevamente pero con el mismo tamaño que tenia antes de eliminarlo quisiera que empesara con un tamaño mas pequeño pesa 10MB solo la primera ves que lo elimine enpeso desde zero por que antes fue realmente un archivo de TEXTO solo que le cambie el nombre completo ahora repito el metodo y no enpiesa de ZERO el dya siguiente sige con todo el tamaño nose que hacer como le hago para espero que detener el EXPLORER.EXE funcione aun que dudo que pueda pausarse ya que cuando uno detiene este proceso no puede abrir carpetas ni borrar archivos POR FAVOR contestame si al eliminarlo al apagar el EXPLORER.EXE inisia nuevamente con un tamaño mas pequeño

JH dijo...

Por alguna razón los íconos que necesita "cachear", en tu caso ya pesan 10 MB de una, eso o tu Windows está reservando 10 MB por adelantado (truco para combatir la fragmentación del sistema de archivos). Como bien has observado, sin explorer no podrás operar con las carpetas gráficamente, deberás hacer todo desde el CMD como explico en el post. Dime tu Windows y te digo cómo lanzas el CMD en él. Si es Windows 8.1 o 10 dale clic derecho al icono de Windows abajo, a la izquierda, y en el menú que se despliega clic en "Símbolo del sistema". En Windows 8 es igual solo que no hay ícono de Windows, deberás hacer el clic derecho bien sobre la esquina inferior izquierda de la pantalla.

Publicar un comentario