WindowsXP Windows root system32 hal.dll

Justin96

Erster Beitrag
Hallo habe ein problem mit meinem laptop
dort steht das windows root system32 hal.dll fehlt oder beschädigt ist
das problem ist ich will es reparieren habe aber keine windows xp cd mehr
was mache ich den jetzt ?
 
Wenn HAL fehlt, ist meistens was anderes im Ar*** Argen.
Platte putt, Virus, MFT-Fehler...
Der HAL wird u.a. vom Energieschema festgelegt (automatisch runterfahren mit
auto-aus oder runterfahren/manuell-aus)
Also mal eben ersetzen geht nicht, das wird idR eine Neuinstallation.

Und ohne XP-CD gehts auch nicht (Reperaturinstallation), die musst du dir vom
Kumpel ö.ä. besorgen (evtl im Computerladen fragen, ob die dir ne Kopie ohne
Nummer brennen können).

Vorher kann ein Vollbackup nicht schaden bzw die wichtigsten Dateien & Dokumete
& Musik etc anderweitig zu sichern.

Ein genutzter XP-key lässt sich zB mit SIW auslesen
http://www.gtopala.com/

argl f* geht ja nicht.
Keyfinder PE kann das (lokal als auch extern)
http://www.drowaelder.de/winpe/PEIndex.htm
Bild: http://www.drowaelder.de/winpe/keyfinder-pe/keyfinder-pe.htm
 
Das eine oder andere mal hat aber bei mir auch folgendes Funktioniert:

- CD rein
- Recoverykonsole booten
- Admin-Passwort eingeben
- expand <cdlw>:\i386\hal.dl_ C:\Windows\system32\hal.dll
- exit

Wenn du keine XP-Cd hast, kann es aber dennoch sein, dass (v.a. wenn Windows per GUI-Installation installiert wurde) die datei gepackt vorhanden ist.

- FreeDOS downloaden
- Booten
- set path=%path%;C:\Windows\system32
- expand <cdlw>:\i386\hal.dl_ C:\Windows\system32\hal.dll
- exit

ANM:
- FreeDOS funktioniert nur, wenn das Dateisystem FAT32 ist. NTFS wird leider nicht unterstützt Dafür brauchst du NTFS4DOS
- Befehle sind Fett geschrieben
- <cdlw> muss durch deinen Laufwerksbuchstaben ersetzt werden.
- Methode2 funtkioniert natürlich nur, wenn der i386-Ordner vorhanden ist.
- Pfade müssen ggf angepasst werden
- Vorheriges Backup wird dennnoch empfohlen.
 
Jaja, man darf doch wohl mal was überlesen... :angel


EDIT:
BTW: Justin, hast du keine Recovery-Discs mitbekommen (oder sie selbst angelegt)?
Meist (Sony ist/war der einzige den ich kenne wo man das nicht kann) sind das normale Installationsdiscs mit slipstreamed/unattended Treiberinstallationen.

EDIT2:
Nochmal etwas gesucht (die Geschichte interessiert mich irgendwie...)

Ich denke, es könnte noch eine möglichkeit geben.
Bei meiner Windows-Installation (kein I386 Ordner vorhanden) gibt es die Datei:
C:\Windows\Driver Cache\i386\sp2.cab
Da sind diverse hal*.dll Dateien vorhanden.

Theoretisch musst du nur die defekte durch die richtige die in der cab gepackt ist entpacken.

- FreeDOS downloaden
- Booten
- set path=%path%;C:\WINDOWS\system32
- ren C:\WINDOWS\system32\hal.dll hal.dll.bak
- cd "C:\WINDOWS\Driver Cache\i386"
- expand sp2.cab -r -F:<deinehal> C:\WINDOWS\system32\hal.dll
- exit

ANM.: Der Parameter -r beim expand-Befehl bewirkt das umbenennen. Sollte das nicht funktionieren (hab hier keine möglchkeit zum testen), dann benenn die Datei die du gewählt hast einfach manuell per ren-Befehl um.

<deinehal> mus natürlich durch deinen dateinamen ersetzt werden.

Die Frage ist natürlich nur, welche hal*.dll Datei du nimmst. Es gibt in dem sp2.cab-Package nämlich ganze 7 Stück (hal.dll halaacpi.dll halacpi.dll halapic.dll halmacpi.dll halmps.dll halsp.dll)
Da musste ich auch etwas suchen, bin aber in der MS-KB fündig geworden:

Erstens gibt es diese Liste: http://support.microsoft.com/kb/309283/de
"Standard-PC", Nicht-ACPI-PIC-HAL (Hal.dll)
* Standard-PC


"MPS-Uniprozessor-PC", Nicht-ACPI-APIC-UP-HAL (Halapic.dll)
* Standard-PC
* MPS-Uniprozessor
* MPS-Multiprozessor


"MPS-Multiprozessor-PC", Nicht-ACPI-APIC-MP-HAL (Halmps.dll)
* Standard-PC
* MPS-Multiprozessor


ACPI-PC (Advanced Configuration and Power Interface), ACPI-PIC-HAL (Halacpi.dll)
* Standard-PC
* ACPI-PC (Advanced Configuration and Power Interface)


"ACPI-Uniprozessor-PC", ACPI-APIC-UP-HAL (Halaacpi.dll)
* Standard-PC
* ACPI-PC (Advanced Configuration and Power Interface)
* ACPI-Uniprozessor
* ACPI-Multiprozessor


"ACPI-Multiprozessor-PC", ACPI-APIC-MP-HAL (Halmacpi.dll)
* Standard-PC
* ACPI-PC (Advanced Configuration and Power Interface)
* ACPI-Multiprozessor
* MPS-Multiprozessor

Da da aber nur 6 der 7 aufgelistet sind, hab ich noch etwas weitergesucht: http://support.microsoft.com/kb/156358/de

Halast.dll = "AST Manhattan SMP"
Halsp.dll = "Compaq SystemPro-Multiprozessor oder 100 Prozent kompatibel"
Halcbus.dll = "Corollary C-Bus-Architektur"
Halmca.dll = "IBM PS/2 oder anderer MCA (Micro Channel Architecture)-basierter PC"
halmpsm.dll = "MCA-Multiprozessor-PC"
Halapic.dll = "MPS-Einprozessor-PC"
Halmps.dll = "MPS-Multiprozessor-PC"
Halncr.dll = "NCR-System 3000, Model 3360/3450/3550"
Haloli.dll = "Olivetti LSX5030/40"
Hal.dll = "Standard-PC" (Einprozessor-HAL)
Hal486c.dll = "Standard-PC mit C-Step-Prozessor i486"
Halwyse7.dll = "Wyse-Serie 7000i, Modell 740MP/760MP"

Meine PCs sind bisher immer ACPI-PC gewesen (sieht man im Gerätemanager unter "Computer"), aber wenn du dir nicht sicher bist, kannst du auch die Größe der Dateieen vergleichen (die sind bei mir auch gleich groß).

Zum vergleichen der Dateien musst du natürlich alle hal*.dlls entpacken. Da machst du einfach folgendes:
- cd "C:\WINDOWS\Driver Cache\i386"
- md C:\haltemp\
- expand sp2.cab -F:hal*.dll C:\haltemp\

Und ich nehme an, dass die sp2.cab ein teil des ServicePack 2 für Win ist. Wenn du die Datei nicht hast, dann lad dir das komplette SP2 runter und extrahiere die dateien so.

ANM2.: Wenn du SP3 hast, kanns natürlich auch sein, dass es eine SP3.cab gibt. K.a. einfach mal nachschauen.
 
Zuletzt bearbeitet:
Die Fehlermeldung das die hal.dll beschädigt ist oder fehlt ist inkorrekt. Ein Win Fehler, es scheint vielmehr die Pfad Zuordnung der ARC Pfade durcheinander gekommen zu sein. Ich hab den Fehler nun zum zweiten mal ohne erkennbaren Grund gehabt, keine Neuinst oder oder Hardware veränderung.
Da ich weder mit dem neuanlegen der hal.dll oder dem editieren der boot.ini noch mit fixboot,fixmbr weitergekommen bin habe ich Win neu aufgespielt und dann das Image darüber gespielt. Das hat funktioniert.
Wenn jemand weiß wie man mit der rep. Konsole die Pfade wiederherstellen kann dann kann man sich das bestimmt auch sparen.

Freundlichst
Para
 
Oben