5.9k Aufrufe
Gefragt in WindowsXP von anni77 Einsteiger_in (27 Punkte)
Huhu!

Leider habe ich die ehrenwerte Aufgabe, den Rechner meines Vaters zu reparieren und komme nicht weiter.
Windows XP startet nicht und die Meldung einer beschädigten oder fehlenden Datei WINDOWS ROOT>\system32\hal\dll.
erscheint.
Ich habe bereits CHKDSK /r versucht und das zuerst zu bootende Laufwerk ist die Festplatte.
Woran könnte es denn noch liegen?

Herzlichen Dank, bin echt verzweifelt!
anni

15 Antworten

0 Punkte
Beantwortet von Experte (1.3k Punkte)
Hallo Anni77,

die boot.ini scheint ok zu sein, aber sie passt überhaupt nicht zu den Beschreibungen deiner bisherigen Vorgehensweise.

Die Einträge/Zeilen, die nach mehrmaligem Ausführen von bootcfg /rebuild vorhanden sein müssten, fehlen.

danach kommt die Frage:
Installation zur Startliste hinzufügen? (ja/Nein/Alle):
ich habe Ja ausgewählt
Ladeekennung: ich habe nur Enter gedrückt
Ladeoptionen für Betriebssystem: ich habe nur Enter gedrückt

Demnach müsste die boot.ini jetzt zumindest so aussehen

[boot loader]
timeout=30
default=multi(0)disk(0)partition(1)WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=""
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Home Edition" /fastdetect /noexecute=optin


Entsprechend müsste der Bootloader beim Start mindestens 3 Betriebssystemeinträge zur Auswahl anbieten mit dem zuletzt mit bootcfg /rebuild hinzugefügten Eintrag als Standard.

- [sub][hier steht nix, wenn du keinen Namen (Ladekennung) vergeben hast][/sub]
- Microsoft Windows XP Home Edition
- Microsoft Windows XP Home Edition


Er durchsucht alle Festplatten nach Windows-Installationen und findet 1! (müssten es nicht zwei sein?)

Es müssten 2 sein. Ja.

Versuche es bitte mal mit
bootcfg /scan
und notiere, wo sich die gefundene/n Windowsinstallation/en befindet/befinden.

Da du dich in der Wiederherstellungskonsole bei C:\WINDOWS angemeldet hast, sich die funktionstüchtige Windowsinstallation aber vermutlich auf Laufwerk D:\ befindet, hab ich keine Ahnung, wie es möglich sein sollte, dass eine von beiden nicht gefunden wird.

Noch einen Tipp vielleicht?

Weiterhin davon ausgehend, dass sich das zu reparierende Windows auf Laufwerk C: befindet, würde ich noch versuchen, die hal.dll zu ersetzen, wie xmax in Antwort 6 vorschlug

In der Wiederherstellungskonsole hinter C:\WINDOWS> einzugeben
expand e:\i386\hal.dl_ c:\windows\system32

Mit "j" bestätigen, dass die hal.dll überschrieben werden soll.

Gruß
Seven
0 Punkte
Beantwortet von Experte (1.3k Punkte)
Nachtrag:

Man kann die Datei hal.dll auch ganz simpel vom lauffähigen in das kaputte XP kopieren. Vorher im Explorer -> Extras -> Ordneroptionen -> Ansicht einstellen, dass auch versteckte und Systemdateien angezeigt werden. hal.dll in windows\system32 suchen. Dann copy 'n' paste (in windows\system32 der defekten Windowsinstallation).
0 Punkte
Beantwortet von anni77 Einsteiger_in (27 Punkte)
Hallo Seven,
danke, dass du immernoch "durchhälst"!

bootcfg /scan

und notiere, wo sich die gefundene/n Windowsinstallation/en befindet/befinden.


Habe ich gemacht:
"Bei welcher Windows -Installation möchten sie sich anmelden?"
-> habe 1: C: \WINDOWS gewählt
dann bootcfg /scan
->Die Suche nach Windowsinstallationen war erfolgreich.
-> Insgesamt gefundene Windowsinstallationen: 1
[1]: C:\WINDOWS

So, passt das?


Leider hat das kopieren der hal.dll nichts geändert.
Das alte Windows zeigt trotzdem die Fehlermeldung.

Das expand habe ich schon versucht, leider ohne Erfolg!

Was könnte ich noch tun?
Danke
Anni
0 Punkte
Beantwortet von xmax Experte (4.1k Punkte)
Sollte damit nicht funktionierten, bleibt nur die Daten zu retten und Windows neu zu aufspielen. - @A6, hast du denn jetzt die Daten gesichert?
Denn, wie ich schon schrieb:
Die HDD mit dem Hersteller-Tool nach Fehler überprüfen lassen, vielleicht noch richtig löschen und dann neu installieren.

Es ist durchaus möglich, dass die HDD einen weg hat, hatte mal ähnliches...
Immer im gleichen Festplattenbereich, so zu sagen die gleiche Stelle beim Booten machte Probleme und das System konnte nicht booten.
Jetzt ist die HDD eine Test-HDD, da ich der kein BS anvertrauen würde.
---
Also damit hier weiter geht.
Das neue System ist jetzt funktionsfähig oder?
---
Zur der Datenrettung/Sicherung, am einfachsten wäre wenn du die HDD am anderen PC dranhängen könntest und dann was benötigt wird überspielen.
Die anderen Möglichkeiten erwähnte ich schon in der @A6.
Gerade bei solchen Problemen (die @A7 "Es zeigt mir gar nichts an, nur neue "leere" Ordner.") es nicht über dem Windows zu machen, kann oft sehr hilfreich sein.
Ist dir das zu heikel, besorge dir jemanden vor Ort der das erledigen kann.
--
Willst du hier weiter machen, gebe ein paar Infos zu:
[list]
[*] der erwähnten HDD an- also die Bezeichnung
[*] Mainboard oder ist das ein Komplett-PC, dann die Bezeichnung davon[/list]

xmax
0 Punkte
Beantwortet von Experte (1.3k Punkte)
Hallo Anni,

belohne mich doch freundlicherweise für mein Durchhaltevermögen mit ein paar Infos.

Für die scheinbaren Ungereimtheiten zwischen deiner boot.ini und deinen dürftigen sonstigen Angaben finde ich eigentlich nur eine Erklärung.

Lt. boot.ini ist das zuletzt installierte Windows auf Laufwerk C:\ (Partition 1), das ältere auf Laufwerk D:\. Das hieße also, dass zuvor das einzige Windows möglicherweise aus "historischen" Gründen auf Laufwerk D:\ (Partition 2) installiert gewesen wäre und weiterhin, dass sich dessen Bootdateien (ntdetect.com, ntldr, boot.ini) auf C:\ befunden haben müssten.

Nun trat der hal.dll-Fehler auf und du hast irgendwie eine Windows-Neuinstallation auf Laufwerk C:\ gemacht.

Meine etwas wackelige These: Du hast das neue Windows installiert, ohne Partition C:\ zu formatieren, wodurch die Bootdateien des alten Windows nicht gelöscht, aber teilweise überschrieben wurden. Irgendwo muss dieser boot.ini-Eintrag des älteren Windows auf Partition 2 ja herkommen, verdammich.

So, stimmt meine Vermutung, liegt die zu ersetzende hal.dll vermutlich in D:\windows\system32 (ntoskrnl.exe entsprechend)

Vielleicht bin auch total auf dem Holzweg, aber dann guck doch bitte mal, auf welchen Partitionen sich die Ordner Windows jeweils befinden

und

kopiere die aktuelle Version der boot.ini hier rein!

Du tätest mir damit einen persönlichen Gefallen.

Gruß
Seven
...