hal.dll fehlt oder ist beschädigt

Don-King

Cadet 4th Year
Registriert
Okt. 2008
Beiträge
95
Hallo liebe Forengemeinde,

Ich hab ein Problem mit Windows XP. Beim Bootvorgang bleibt der Rechner mehr oder minder mit einer untypischen Fehlermeldung stehen.

OS: Windows XP Home SP3

Anzahl Festplatten: 1
Festplatte: Seagate Barracuda 7200.9 family (200GB)
Alter: ca. 2 1/2 Jahre
SMART-Festplatten-Status-Überprüfung: No Errors

Gestern hatte ich meinen Rechner noch normal hochgefahren. Ich wollte mich anmelden, dann blieb er direkt nach der Anmeldung stehen und ich entschied mich für einen manuellen Neustart des Systems.

Danach kam die Fehlermeldung:
Fehler beim Lesen des Datenträgers
Für einen Neustart Strg+Alt+Entf drücken

Über die Windows XP-CD hatte ich in der Wiederherstellungskonsole (nachdem ich nach dem Fehler bei Google recherchiert hab) "fixboot" und "fixmbr" eingegeben.

Damit war das Problem, wie zu erwarten, nicht behoben. Die Fehlermeldung war dafür auf Englisch:

A disk read error occured
Press CTRL+ALT+DEL to restart

So, dann wollte ich noch weiteres in der Wiederherstellungskonsole probieren, ging aber leider nicht, da die Windows XP CD nicht mehr richtig startete.

Ich nahm die Festplatte mit zu einem Bekannten. Danach schloss ich sie über einen HI-SPEED USB 2.0 TO SATA/IDE ADAPTER an einen anderen Rechner an.

Dort hat er die Festplatte erkannt, aber konnte nicht drauf zugreifen (Dateien beschädigt oder so). Demzufolge konnte er auch nicht die Größe, den freien- und belegten Speicher ermitteln.

Danach führte ich zweimal einen chkdsk aus, denn die Notfall CD von Computerbild hat bei den Partitionswerkzeugen angezeigt, dass mein NTLDR inconsistent ist und ich doch bitte einen chkdsk ausführen solle.

Beim ersten mal nur:

Da fand er ziemlich viele Fehler (er löschte viele Dateien und Indizes)

Danach:

Da fand er nix.

Nachdem ersten CHKDSK, konnte ich schon wieder auf alle Dateien zugreifen.

Jetzt hab ich die Festplatte wieder in meinen Rechner gehangen, und da kommt folgender Fehler:

<Windows root/system32/hal.dll> fehlt oder sei beschädigt.

Alles eigentlich kein Problem, aber irgendwie scheint der Windows-Ordner nicht mehr da zu sein.

Ich bin im Moment mit der Notfall CD von Computerbild (auf Basis von Linux) drin und wenn ich dort zu meiner Festplatte wechsel, werden die anderen Daten zwar angezeigt, aber kein Windows-Ordner.

SMART von derselben CD zeigte mir keine Fehler an. Also scheint die Festplatte an und für sich noch völlig in Ordnung zu sein.

Alles was ich will ist, meinen Rechner wieder normal benutzen zu können. Vor einem halben Jahr habe ich den Rechner schon einmal neu aufsetzen müssen. Auf Daten sichern, Formatieren und XP+Programme neu aufspielen habe ich nachdem X-ten mal und nach eigentlich so kurzer Zeit auch keinen Bock mehr.

Ist das normal? Was kann bzw. sollte ich jetzt tun?

Vielen Dank schon einmal, für alle hilfreichen und konstruktiven Beiträge :)
 
Zuletzt bearbeitet:
AW: hall.dll fehlt oder ist beschädigt

Hi,

du musst die hal.dll von der XP SP3 Install CD in dein System32 rein kopieren per wiederherstellungskonsole, danach sollte dein windows wieder normal booten.
Das Problem hatte ich damals mit Vista des öfteren, vor den Service Packs... mit Seven is es bisher nicht aufgetreten.
 
AW: hall.dll fehlt oder ist beschädigt

Versuch mal mit einer ERD-Commander CD zu booten, die must du dir natürlich erstmal besorgen. Ältere Varianten gibts umsonst im Netz! Vielleicht siehst du dann ja das Windows- Rootverzeichnis und den System32- Ordner, was ja nötig ist um eine unbeschädigte hal.dll dahinein zu kopieren! Die hal.dll ist übrigens nicht von Pappe, das ist der HardwareAbstractionLayer und sehr wichtig! Schade das du Windows XP Home hast, mit Professional wäre das einfach gewesen, Reparaturvorgang mit der XP- CD und fertig (wenn die Platte nich doch ne Macke hat natürlich)! Ich vermute mal das du nicht mit F8 in den abgesicherten Modus kommst, damit meine ich einen Unterpunkt des Menüs was beim drücken von F8 erscheint, nämlich den Unterpunkt "Mit der letzen funktionierenden Hardwarekonfiguration starten"!
 
AW: hall.dll fehlt oder ist beschädigt

Hatte das Problem auchmal, war etwas strange...

Kannst folgendes probieren hat bei mir geholfen.
Die oben genannten Sachen stimmen schon, nur als ich das Problem hatte, kam es als wieder.

Mit einer Windos-CD booten (hier Lauferk d: ) und sich darüber in die Wiederherstellungskonsole angeln (hast du ja schon Übung drin).
Dann die Befehle

copy d:\i386\ntldr c:\
copy d:\i386\ntdetect.com c:\
copy d:\i386\haldl_ c:\windows\system32

Anschliessend boot.ini neu erstellen (Falls diese fehlt)
bootcfg \list
bootcfg \rebuild
(Name und Optionen beim rebuild siehe hier http://support.microsoft.com/kb/291980/de )
 
Dann kannst Du auch direkt die Reparaturinstalltion von Windows laufen lassen, CD rein Installation starten, installieren wählen, es wird nach bereits installierten Windows Versionen gesucht, wenn eine gefunden wird, wähle diese aus und drücke "R" zum reparieren, wenn keine gefunden wird, bringen Dir die anderen Ratschläge allerdings auch nichts. Die CD muss dann das SP bereits integriert haben. das auch auf dem Rechner ist.
 
Hallo,

Erst einmal vielen Dank für eure Beiträge. Bitte seid mir nicht böse, wenn ich nicht auf alle eingehen kann :)

Lionet schrieb:
Hatte das Problem auchmal, war etwas strange...

Kannst folgendes probieren hat bei mir geholfen.
Die oben genannten Sachen stimmen schon, nur als ich das Problem hatte, kam es als wieder.

Mit einer Windos-CD booten (hier Lauferk d: ) und sich darüber in die Wiederherstellungskonsole angeln (hast du ja schon Übung drin).
Dann die Befehle

copy d:\i386\ntldr c:\
copy d:\i386\ntdetect.com c:\
copy d:\i386\haldl_ c:\windows\system32

Anschliessend boot.ini neu erstellen (Falls diese fehlt)
bootcfg \list
bootcfg \rebuild
(Name und Optionen beim rebuild siehe hier http://support.microsoft.com/kb/291980/de )

Sowas in etwa hatte ich auch schon im Internet gelesen. Probiert aber noch nicht, weil ich den Laufwerksbuchstaben nicht weiß.

Kann man den auf irgendeine Art und Weise ermitteln? Per Wiederherstellungskonsole hinnavigieren mein ich. Ich hab 2 DVD Laufwerke drinnen und unter WinXP hatte ich noch 2 virtuelle Laufwerke. Wie krieg ich also den Namen vom gewünschten Laufwerk per cmd/Konsole heraus?

ironmad schrieb:
Versuch mal mit einer ERD-Commander CD zu booten, die must du dir natürlich erstmal besorgen. Ältere Varianten gibts umsonst im Netz! Vielleicht siehst du dann ja das Windows- Rootverzeichnis und den System32- Ordner, was ja nötig ist um eine unbeschädigte hal.dll dahinein zu kopieren! Die hal.dll ist übrigens nicht von Pappe, das ist der HardwareAbstractionLayer und sehr wichtig! Schade das du Windows XP Home hast, mit Professional wäre das einfach gewesen, Reparaturvorgang mit der XP- CD und fertig (wenn die Platte nich doch ne Macke hat natürlich)! Ich vermute mal das du nicht mit F8 in den abgesicherten Modus kommst, damit meine ich einen Unterpunkt des Menüs was beim drücken von F8 erscheint, nämlich den Unterpunkt "Mit der letzen funktionierenden Hardwarekonfiguration starten"!

Den ERD-Commander würde ich dann benutzen, wenn die oben genannten Copy- und Boot.ini-Rebuild-Methoden nicht funktionieren. Und nein, mit F8 komme ich leider nicht in den abgesicherten Modus.

Dann kannst Du auch direkt die Reparaturinstalltion von Windows laufen lassen, CD rein Installation starten, installieren wählen, es wird nach bereits installierten Windows Versionen gesucht, wenn eine gefunden wird, wähle diese aus und drücke "R" zum reparieren, wenn keine gefunden wird, bringen Dir die anderen Ratschläge allerdings auch nichts. Die CD muss dann das SP bereits integriert haben. das auch auf dem Rechner ist.

Das ist ein wenig schwierig, weil die CD nur SP2 beinhaltet und ich eigentlich schon SP3 drauf hab.:(
 
Kann man den auf irgendeine Art und Weise ermitteln?
Du kannst "dir" eingeben wenn Du auf ein CD Laufwerk zugreifst und die Windows CD drin ist. Dann sollte ja der Inhalt des Laufwerkes angezeigt werden. Also wechseln zu d: dann Dir eingeben ist es nicht d, dann e:, f: ,x: irgendwo wird ja die CD sein. Wenn nur 1 Partition auf der Platte ist wird immer das erste Laufwerk D: sein. Die virtuellen Laufwerke sind beim Start von CD nicht vorhanden.

BartsPE von CD sollte evtl hilfreich sein um an Windows Daten zukommen, also von CD auf Platte kopieren.
copy d:\i386\haldl_ c:\windows\system32
Das wird wohl nix werden, weil die Datei einen anderen Namen hat und sie muss extrahiert werden und nicht kopiert.

expand d:\i386\hal.dl_ c:\windows\system32\hal.dll

Das ist ein wenig schwierig, weil die CD nur SP2 beinhaltet und ich eigentlich schon SP3 drauf hab.
Das ist nicht schwieriger als die Befehle auszuführen, die Du an der WH-Konsole eingeben möchtest. Starten und wenn kein System gefunden wird zur Reparatur, kannst Du immer noch das andere machen. Wenn repariert wird mit der SP2 CD, kannst Du ja immer noch das SP3 nachinstallieren. Du kannst aber nicht versuchen mit einer CD ohne SP ein System mit SP2 zu reparieren, das wird dann nicht erkannt, wie es bei SP2+3 aussieht habe ich noch nicht getestet.
 
Zuletzt bearbeitet:
werkam schrieb:
Du kannst "dir" eingeben wenn Du auf ein CD Laufwerk zugreifst und die Windows CD drin ist. Dann sollte ja der Inhalt des Laufwerkes angezeigt werden. Also wechseln zu d: dann Dir eingeben ist es nicht d, dann e:, f: ,x: irgendwo wird ja die CD sein. Wenn nur 1 Partition auf der Platte ist wird immer das erste Laufwerk D: sein. Die virtuellen Laufwerke sind beim Start von CD nicht vorhanden.

Danke. Ich hab zwar 2 Laufwerke, anscheinend hat er aber nur das primäre Laufwerk (das ursprünglich eingebaut war) erkannt. Durch Zufall bin ich über rumprobieren mit cd ("change directory") auf das primäre Laufwerk mit dem Buchstaben "h:\" gestoßen.

Ich hab nun die Befehle ausprobiert, hingehauen hat es leider nicht.

Zuerst wollte ich von C:\> auf C:\Windows wechseln. Das Verzeichnis ist aber nicht vorhanden, so jedenfalls die Wiederherstellungskonsole.

Dann habe ich folgende Befehle ausprobiert:

copy h:\i386\ntldr c:\ - 1 Datei(en) kopiert - ok
copy h:\i386\ntdetect.com c:\ - 1 Datei(en) kopiert - ok

expand h:\i386\hal.dl_ c:\windows\system32\hal.dll - Zugriff verweigert - Failed

expand h:\i386\hal.dl_ c:\windows\system32\ - Zugriff verweigert - Failed

copy h:\i386\hal.dl_ c:\windows\system32 - Zugriff verweigert - Failed

bootcfg \list - Es gibt momentan keine anzuzeigenden Starteinträge - /

bootcfg \rebuild - Failed
Alle Festplatten werden nach Windows-Installationen durchsucht

Bitte warten, dies kann einige Zeit in Anspruch nehmen

...

Fehler: Die Festplatten konnten nicht nach Windowsinstallationen durchsucht werden. Dieser Fehler kann von einem beschädigten Dateisystem verursacht werden, der Bootcfg daran hindert, Festplatten auf Fehler zu überprüfen.

Hinweis: Dieser Vorgang muss erfolgreich abgeschlossen werden, um die Befehle /add oder /rebuild verwenden zu können.

Danach hab ich über die Notfall CD von Computerbild versucht den Bootsektor neu zu schreiben. Dies ging zwar, behob aber nicht den Fehler mit der hal.dll

Was bleiben mir jetzt noch für Möglichkeit, außer Dateien sichern - Formatieren - Neu aufspielen - ?

Sollte ich es mit einer XP-Reparaturinstallation probieren?

werkam schrieb:
BartsPE von CD sollte evtl hilfreich sein um an Windows Daten zukommen, also von CD auf Platte kopieren.

Könntest du das etwas konkretisieren? Ich hab bislang noch nicht mit dem Programm gearbeitet.:p

Sollte ich mir BartsPE runterladen, auf CD brennen, einlegen und dann die fehlenden Dateien von der BartPE CD auf die Festplatte kopieren?
 
Zuletzt bearbeitet:
Mit der BartsPE CD hast Du vollen Zugriff auf die Platte und kannst nachsehen was alles noch drauf ist, wenn der Ordner Windows nicht vorhanden ist, kann ja auch anders heissen (WinXP). Wird denn bei C:\>dir ein Ordner Windows angezeigt?
Hast Du mal mit Testdisk von CD gestartet und nachgesehen was alles noch auf der Platte drauf ist, Du musst ja nix drauf schreiben um nicht noch mehr zu zerstören.
Wie ich sehe hast Du ja noch ein lauffähiges System, könntest Du die Platte darin einbauen und evtl etwas reparieren? Manchmal reicht es "chkdsk" unter einem laufenden Windows durchzuführen und danach geht die Platte wieder. Vorsichtshalber ein Image der Platte anfertigen.
Wenn die Reparatur von Cd schon nix anzeigt, dann solltest Du überlegen eine Neuinstallation durchzuführen, ist einfacher und besser als ein defektes System versuchen zu retten.
 
werkam schrieb:
Mit der BartsPE CD hast Du vollen Zugriff auf die Platte und kannst nachsehen was alles noch drauf ist, wenn der Ordner Windows nicht vorhanden ist, kann ja auch anders heissen (WinXP). Wird denn bei C:\>dir ein Ordner Windows angezeigt?

Nein, nur die anderen (üblichen) Ordner.

werkam schrieb:
Hast Du mal mit Testdisk von CD gestartet und nachgesehen was alles noch auf der Platte drauf ist, Du musst ja nix drauf schreiben um nicht noch mehr zu zerstören..

Meinst du mit "Testdisk" die hier? Nein, hab ich noch nicht.

werkam schrieb:
Wie ich sehe hast Du ja noch ein lauffähiges System, könntest Du die Platte darin einbauen und evtl etwas reparieren? Manchmal reicht es "chkdsk" unter einem laufenden Windows durchzuführen und danach geht die Platte wieder. Vorsichtshalber ein Image der Platte anfertigen.

Laufendes System ist so ne Sache. Ist halt derzeit die Notfall Live-CD von Computerbild bei mir im Laufwerk. Darauf läuft glaub ich Knoppix (auch so ein Linux-Derivat) und mit diesem ist es halt noch möglich kleinere Sachen zu erledigen (im Internet surfen und sowas).

Das mit chkdsk hatte ich wie gesagt schon bei einem Freund mit funktionierendem XP gemacht. Da hat er einige Fehler gefunden und einige Dateien gelöscht.

Danach noch ein intensiv-chkdsk, aber da hat er nichts weiter gefunden.

werkam schrieb:
Wenn die Reparatur von Cd schon nix anzeigt, dann solltest Du überlegen eine Neuinstallation durchzuführen, ist einfacher und besser als ein defektes System versuchen zu retten.

Stimmt, mit dem Gedanken spiele ich auch so allmählich.

Ich werd vielleicht erst einmal schauen, was mir BartPE und die Testdisk von Computerbase so anbietet und ob der Windows-Ordner überhaupt noch auffindbar ist. Danach denke ich vielleicht an eine Neuinstallation.

Kann es auch sein, dass durch chkdsk /f der Windowsordner gelöscht oder einfach nicht wiederhergestellt wurde? In einem anderen Forum schrieb ein Moderator, dass man den Befehl bei solch einem Fehler unter keinen Umständen ausführen sollte.

Edit:

Falls es noch irgendwie relevant sein sollte, hier die boot.ini:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /noexecute=optin /fastdetect /usepmtimer
 
Zuletzt bearbeitet:
Boot.ini ist in Ordnung, da steht auch als Systemordner "Windows", sollte also auch o.K. sein.
Wenn der Ordner Windows sowieso weg ist, installiere ohne zu formatieren Windows einfach mal neu, wenn die Platte ja anscheinend keine Hardwarefehler hat (Smart), dann sind wenigstens Deine Daten noch da und die Programme musst Du eben neu installieren, von den Daten den Besitz übernehmen. Versuch macht klug, mehr Schaden als Du jetzt schon hast, kannst Du auch nicht mehr anrichten.
 
Zurück
Oben