HAL.DLL falta o está dañado

Si no puedes iniciar Windows a causa del mensaje de error siguiente:

HAL.DLL falta o está dañado

Windows could not start because the following file is missing or corrupt: Windows\System32
\Hal.dll

No se ha iniciado Windows porque el siguiente archivo falta o está dañado: Windows\System32
\Hal.dll

En la mayoría de los casos la causa del problema no es el DLL sino el archivo BOOT.INI.

Las letras de unidad son solo ejemplos, en cada caso, deberán ser ajustadas a las configuraciones de cada persona.

El orden en que deben ser intentados estos pasos es el mismo en que los escribo debido a que aumenta el nivel de complejidad.

Todos los pasos han de ser seguidos cuidadosamente y prestando a tención a los mensajes en pantalla, si en cualquier momento se tienen dudas o no se sabe como continuar, lo mejor es consultar con alguien que sepa lo que hace.

El método de reparación desde otra máquina ofrece la ventaja adicional de poder hacer una copia de emergencia de los datos.

1. Desde la consola de reparación del sistema:
(Este método solo funciona en Windows XP o 2003)

  • Arrancar la máquina con el cd de instalación del sistema.
  • Iniciar la consola de reparación siguiendo las instrucciones en pantalla para tal fin.
  • Escribir: attrib -R-H-S C:\boot.ini.
  • Escribir: del C:\boot.ini
  • Escribir: bootcfg /rebuild
  • Escribir: fixboot
  • Tras reiniciar el sistema todo debería haber vuelto a la normalidad

2. Desde otra máquina:

  • Desmontar el disco con el sistema dañado y montarlo como esclavo en otra máquina con sistema operativo Windows 2000 o superior.
  • Arrancar el sistema de la máquina anfitrión y permitir al sistema anfitrión realizar todos los procesos de detección necesarios.
  • Reiniciar el sistema anfitrión.
  • Una vez reiniciado, activar la opción de ver archivos ocultos y de sistema.
  • Con el explrador de archivos, localizar la carpeta E:\Windows\ServicePackFiles\i386 si estamos reparando un Windows XP o E:\Winnt\ServicePackFiles\i386 si estamos reparando un Windows 2000.
  • Copiar el archivo hal.dll que se encuentra allí a la carpeta E:\Windows\System32 o E:\Winnt\System32. Si pregunta por sobreescribir, responder que si.
  • Apagar el sistema anfitrión
  • Desmontar el disco esclavo.
  • Reinstalarlo como maestro en su computadora de origen.
  • Reiniciar el sistema.

3. Desde la misma máquina pero con otro sistema operativo instalado:

  • El otro sistema operativo debe poder leer sistemas de archivos NTFS modernos, por lo que debe ser, al menos, Windows 2000.
  • Arrancar el segundo sistema de la máquina.
  • Una vez iniciado, activar la opción de ver archivos ocultos y de sistema.
  • Con el explrador de archivos, localizar la carpeta C:\WINDOWS\ServicePackFiles\i386 si estamos reparando un Windows XP o C:\WINNT\ServicePackFiles\i386 si estamos reparando un Windows 2000.
  • Copiar el archivo hal.dll que se encuentra allí a la carpeta C:\WINDOWS\System32 o C:\WINNT\System32. Si pregunta por sobreescribir, responder que si.
  • Reiniciar el sistema.

4. Copiando el archivo desde el cd de instalación original:

  • Arrancar la máquina con el cd de instalación del sistema.
  • Iniciar la consola de reparación siguiendo las instrucciones en pantalla para tal fin.
  • Escribir: type C:\Windows\Repair\Setup.log si es un sistema Windows XP o C:\Winnt\Repair\Setup.log si es un sistema Windows 2000.
  • Buscar la línea que contenga hal.dll, debe ser una línea similar a esta: \Windows\system32\ hal.dll=”halacpi.dll”,”1d8a1″.
  • Copiar en un papel el nombre del archivo que aparece a la derecha del signo de igualdad. Nos refriremos a este archivo en las iguientes líneas como ArchivoHal.
  • Escribir: attrib -R-H-S C:\Windows\System32\hal.dll si es un sistema Windows XP o attrib -R -H -S C:\Winnt\System32\hal.dll si es un sistema con Windows 2000. Si el archivo en efecto ha desaparecido del sistema aparecerá un mensaje de error advirtiéndonos de tal situación.
  • Escribir: del C:\Windows\System32\hal.dll si es un sistema Windows XP o del C:\Winnt\System32\hal.dll si es un sistema con Windows 2000. Si el archivo en efecto ha desaparecido del sistema aparecerá un mensaje de error advirtiéndonos de tal situación.
  • Escribir: expand ArchivoHal /F:D:\I386\Driver.cab C:\Windows\System32\hal.dll /Y si es un sistema Windows XP o expand ArchivoHal /F:D:\I386\Driver.cab C:\Winnt\System32\hal.dll /Y si es un sistema con Windows 2000.
  • Escribir: ren C:\Windows\System32\ArchivoHal C:\Windows\System32\hal.dll si es un sistema Windows XP o ren C:\Winnt\System32\ArchivoHal C:\Winnt\System32\hal.dll si es un sistema con Windows 2000.
    • Si al tratar de renombrar el archivo nos pregunta por sobreescribir uno existente, responder que si.
    • Si no se puede sobreescribir el archivo existente, escribir: del C:\Windows\System32\hal.dll si es un sistema Windows XP o del C:\Winnt\System32\hal.dll si es un sistema con Windows 2000 y reintentar el paso anterior.
  • Reiniciar el sistema.

Etiquetas: , , , , ,

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s


A %d blogueros les gusta esto: