lunes, 27 de agosto de 2007

No se ha iniciado windows porque el siguiente archivo falta o esta dañado: \system32\hal




Hoy me ha pasado una cosa muy curiosa, en la que se puede ver, como no siempre todo es lo que parece, en esto de la informática.

Recibo una llamada de un cliente, en la que me describe el siguiente suceso:
Pantallazo de parada azul, en el que podemos leer el mítico mensaje de "...falta el fichero \system32\hal.dll"

En la mayoría de las ocasiones este error viene dado por un problema en el fichero boot.ini, o bien por que se ha dañado, o algún problema de este tipo, y normalmente sigo este proceso para solucionarlo:

Solución
-Iniciamos el equipo con el CD de nuestro sistema operativo
-Arrancamos la consola de recuperación.
-Una vez nos encontremos en el símbolo de sistema escribimos bootcfg /list
-Con esto se mostraran las entradas del fichero boot.ini actual.
-Lanzamos el comando bootcfg /rebuild, y se iniciara un proceso en el que se examinan las instalaciones que tengamos en nuestros discos duros.
-Siguiendo el proceso mostrado en pantalla se crearan las entradas correspondientes al fichero boot.ini:

Total de instalaciones de Windows identificadas: 1

[1] C:\Windows
¿Agregar la instalación a la lista de inicio? (Sí/No/Todas)

-Después nos pedirá un indentificador de carga, es decir, el nombre descriptivo de la entrada que estamos añadiendo al fichero boot.ini

Una vez acabado el proceso, debemos reiniciar y ya tendremos corregido este problema.

No todo es lo que parece
Así de sencillo se solucionaría este problema, pero hoy cuando me dispongo a realizar la reparación,me doy cuenta, de que la cosa no iba a ser así de sencilla, lanzo un simple dir desde la consola de comandos y cual es mi sorpresa que no es que falte el fichero hal.dll sino que faltan todos los ficheros desde la letra "D" del directorio system32.

Realice un testeo de la unidad de disco, y efectivamente ese disco estaba dañado, por lo que se había perdido información.

Este es un pequeño ejemplo de como, el mismo mensaje de error puede ser ocasionado por situaciones totalmente diferentes, por lo que cuando nos encontremos con un problema, intentar recalar toda la información que podáis, y testear y comprobar todas las variables del problema para poder dar con la solución correcta.

Saludos.


***************Actualizacion 6/09/07*********************

Hoy mismo tuve un aviso de este error. Realice este procedimiento, pero aun asi seguia sin arrancarme.
Volví a arrancar con el cd de windows xp, pero esta vez, le dije que me realizara una instalación. Cuando me detecto que ya había una instalación de windows xp. Seleccione la opción de reparación "R". Una vez acabado el proceso, todo funciono correctamente.

Saludos.

*********************************************************

4 comentarios:

[486] dijo...

Muy útil la info.
PD: No es hal.dll? (creo que era hardware abstraction layer o algo así).
PD2: Sumate un lector por feedburner.

David dijo...

Efectivamente es hal.dll pero no se por que, siempre se me va una segunda l. Sera por la ll de la extensión o que soy disléxico.
Gracias por la corrección.
Por cierto muy interesante tu blog, sumate tu también un lector mas.
Saludos

Anónimo dijo...

Por si sirve de añadido a tu artículo, hoy mismo le paso de buenas a primeras eso a mi Windows.

Lo solucioné eliminando el fichero hiberfil.sys de la raíz de la unidad. Este fichero se generá cuando se hiberna el Windows. Quizás se hubiese generado corrupto.

Ahí te dejo otra causa para el mismo síntoma ;-)

Anónimo dijo...

Hola, resulta que a mi me sucede en 2 computadoras, una a la que le cabie el disco duro por haberse dañado y al primer reinicio de la instlacion aparece ese problema y con diferentes archivos cada vez que realizo la instalación. En otra compu que al principio solo se reiniciaba y posteriormente ya no entro a windows y comenzo a mandar este tipo de msj pero con archivos diferentes. Será a caso un daño físico? el Disco duro esta en buen estado. Gracias