Start Windows XP někdy může skončit chybovým hlášením „Systém Windows nelze spustit. Uvedený soubor je poškozen nebo nebyl nalezen: <Windows root>\system32\hal.dll. Nainstalujte znovu uvedený soubor.“. V některých případech může hlášení alternativně za problematické označit soubory ntoskrnl.exe nebo ntdll.dll.
Hledáte-li řešení tohoto problému, najdete obvykle návody na zkopírování těchto souborů z instalačního CD Windows pomocí Konzoly pro zotavení (Recovery console). Dlužno podotknout, že ve většině případů tato operace nevede k cíli a Windows nadále nestartují.
Chybové hlášení má zpravidla na svědomí vadný nebo chybějící konfigurační soubor pro zavádění systémů – soubor boot.ini. Opravit jej můžete několika způsoby. Doporučuji využít konzolu pro zotavení.
Nastartujte konzolu a přihlaste se k poškozené instalaci.
V konzole se musíte dostat do kořenové složky (do tzv. rootu) prvního spouštěcího disku (obvykle disk C) nebo do složky WINDOWS (C:\WINDOWS>) pokud jste jinde, použijte příkaz cd.. kterým vystoupíte o složku výše nebo cd\, jímž přeskočíte okamžitě do rootu.
Jestliže je v příkazovém řádku C:\> nebo C:\WINDOWS>, napište příkaz
bootcfg /rebuild
jenž po krátké kontrole zobrazí dotaz, zda má přidat instalaci do souboru boot.ini. Přidání potvrdíte napsáním písmene „a“.
Následně se zobrazí výzva k zadání identifikátoru načtení, kam můžete napsat vlastní název operačního systému (kvůli rozlišení). Pokud název nevyplníte, použije se výchozí. Po stisku klávesy Enter se zobrazí možnosti načítání OS, zde můžete napsat /fastdetect, tento příkaz má na svědomí o něco rychlejší a spolehlivější start počítače. Obě dvě možnosti však můžete ponechat prázdné a pouze je odklepnout stiskem klávesy Enter.
Nyní napište do konzoly příkaz exit, jímž ukončíte konzolu a systém se restartuje. Pokud počítač ani po tomto zásahu nenastartuje a nadále vypisuje stejnou chybu, pokuste se obnovit vypisovaný soubor.
Opět nastartujte konzolu a přihlaste se k poškozené instalaci Windows.
1. Nyní musíte nakopírovat potřebný soubor z instalačního CD do adresáře Windows. Tyto soubory se nacházejí na CD v adresáří I386.
2. Do konzoly zapište písmeno, pod kterým se vám hlásí CD/DVD mechanika (např.: D:) a stiskněte Enter.
3. Pak přejděte do složky I386 tak, že napíšete příkaz
cd I386
a stisknete Enter.
4. Nyní soubor hal.dll zkopírujeme do potřebné složky. Soubory na CD jsou obvykle komprimovány a místo originálních názvů mají poslední znak přípony nahrazený podtržítkem, soubor hal.dll tedy bude mít název hal.dl_. do konzoly zapište
expand hal.dl_ C:\Windows\system32\hal.dll
a stiskněte klávesu Enter.
Poznámka: U souborů, které nejsou komprimovány (nemají přejmenováno poslední písmeno přípony) použijete místo příkazu expand příkaz copy, takže zápis bude vypadat takto:
copy NTDLL.DLL C:\Windows\system32\ntdll.dll
Pro soubor ntoskrnl.exe má příkaz následující podobu:
expand NTOSKRNL.EX_ C:\Windows\system32\ntoskrnl.exe
Po úspěšném nakopírování souborů restartujte počítač a Windows by se měla v pořádku spustit. Pokud ani tato operace nezabere a start počítače stále končí stejnou chybou, budete patrně muset přistoupit k opravě Windows (opravné instalaci).
Dobrý den, za návod moc díky. mám spíš problém zadat daný příkaz za C:\windows.
dál mě to prostě nepustí natož abych mohl začít řádek klasicky z levého okraje.
To lermi: To znamená – podaří se ti po staru konzoly přihlásit k instalaci Windows (zadat heslo) a pak už nejde nic dalšího zadávat? ani když zadáš třeba D: a Enter? nezmění se disk?
Dobry den jde o to že jsem stahl creck na nfs shift na uložto.cz ktery obsahuje virus (angela) ktera mě po spuštěni upozornila že mi pc už nepojede a začla mi blbnout cd-rom mechanika a začala se sama otvirat tak jsem to přejel antivirovym programem a zkoušel vir smazat ale neuspěšně a když jsem pc vypnul a zapl tak mi to hlasilo Poškozený soubor hal.dll tak jsem v biosu přehodil cd před hdd abych zkusil opravu windos nebo přeinstalovat ale mechanika mi nechce načist cd nebot cd-rom se stale otvira . nasledně jsem zkoušel napojit novy hdd z windows 7na uvedeny pc a ta se mi ani nerozjede jen naskoči logo a restartuje se to .
Dobrý den.
Na svém PC (windows XP) mám HDD rozdělený na dva primární oddíly: C (30GB), na kterém je OS a D (210GB) na kterém jsou data.
Ve Správě disků jsem náhodně zjistil, že jako první je zde uveden Oddíl D s poznámkou „systém“ a že tento oddíl je aktivní.
Je zřejmé, že k bootování OS dochází z oddílu D a oddíl C je umístěn na druhé partition.
Adresář s Windows je na oddílu C. Spouštěcí soubory „ntldr, ntdetect.com, boot.ini“ jsou obsaženy v obou kořenových adresářích oddílů C i D.
Moje otázka je jak tento stav opravit aby k butování docházelo správně z oddílu C.
Děkuji za pomoc při řešení tohoto problému.
Pedro, já bych do toho nehrabal, pokud ten počítač funguje. Snaha o dokonalost je cestou do pekel… Máš nějaký důvod, proč to potřebuješ změnit, nebo je to jen přehnaná pořádkumilovnost?
Každopádně doporučuju prostudovat si důkladně články:
Po změně aktivního oddílu pomocí nástroje Správa disků se počítač nespustí
Označení oddílu jako aktivního
Označení oddílu jako aktivního (pouze 32 bitů)
Děkuji za rychlou reakci.
Co jsem ve svém dotazu ještě nezmínil je to že pomocí programu Acronis (vypálený ISO na CD) jsem již vyzkoušel udělat oddíl C aktivním s tím výsledkem, že systém po této úpravě již nenabootoval (s oznámením Hall.dll nebyl nalezen nebo je poškozen). Nicméně pomocí tohoto CD jsem vrátil aktivitu na oddíl D a vše je zase v původním stavu.
Po bližším zkoumání souborů Boot.ini jsem přišel na pravděpodobný důvod proč se to nepovedlo. Soubor Boot.ini, který je v kořenovém adresáři oddílu D odkazuje na partition 2 (tedy na C kde jsou windows), kdežto boot.ini, v adresáři oddílu C odkazuje na partition 1, tedy na D kde systém není. Já se tedy domnívám, že když v boot.ini na oddílu C přepíši nasměrování z partition 1 na partition 2, provedu aktivaci C, tak že bude vše OK.
Jinak máš pravdu, že to dělám více méně ze zvědavosti. Ty doporučované články jsem si přečetl a teď jen čekám na tvé požehnání abych to provedl tak jak jsem napsal.
Díky Pedro
No Pedro, asi to bude tak, jak píšeš, on totiž příkaz bootcfg /rebuild dělá přesně to, že prohledá disky podle toho upraví soubor boot.ini.
Takže jestli se ti chce podstupovat ten proces, tak prosím, koneckonců změn není tolik, aby se v případě neúspěchu nedaly vrátit zpět. A dovíš se nejen něco o bootování operačního systému, ale i o sobě 😉
Děkuji za morální pomoc, vše se povedlo podle tak jak jsem si představoval.
Petdro
Ahoj
Mám stejný problém jaký popisuješ v návodu. Udělal jsem vše podle něj a ukázalo mi to veškeré hlášky jako popisuješ. Ale efekt žádný. jediné co se změnilo, že teď mi dává na výběr z několika instalací windows, ale ani jedna nelze spustit a ani jednu nedostanu do nouzáku a to i když mám v PC jen jeden disk a jen jeden OS. Také poslední známá ….. nemá žádný efekt. Existuje nějaká kratší verze jak to rozchodit než jen nová instalace, která je na několik dní práce s ohledem na to, že je to SSD z image několik let používaného systému bez problémů? Upozorňuji, že systém byl normal funkční i na SSD po klonování. Děkuji
Mě se tohle stává také a mám WIN 7 64bit na SSD a všechny jiné data na HDD. Když se mi to pokazi a nenajde to soubor hal.dll tak začnu pc zapínat a behem toho načítání odpojim kabel HDD a ihned vypnu než to stihne naběhnout. Po dalším zapnuti mi to myslim přes F8 vyhodí nabidku do nouzového režimu a pc restartuju a jede to. Možná to někomu pomůže pokud máte podobně zapojeny pc 🙂
Tak tomu říkám dobrá rada nad zlato, akorát si zapomněl dodat, že po tvém zákroku je dobré mít po ruce i kladivo. 😀
Když se tí to nelíbí tak si to vyres sám. Mě je tvuj názor u pr**** protože já si to upravit umím a ty ne! 😀
můžete mi někdo poradit jak tento problém vyřešit když mám notebooka bez CD mechaniky??
Dobrý den, dělal jsem vše podle návodu, ale neukazuje mi to rozbalený soubor 🙁 (E:/386>expand hal.dl_ C:/windows/system32/hal.dll) napíše mi to Rozbaleno o souborů.. Děkuji za odpověď.
Soubory hal.dll ,ntoskrnl.exe a ntdll.dll maže také malware. Na hal.dll se zaměřuje Deleter-E, na ntoskrnl.exe Gruel. Ale ještě jsem se nepotkal s malwarem který maže ntdll.dll.
Zdravim to je sice pekny, ale nekdo tam dal heslo a ja se pres to neprekousu a majitel nevi heslo, protoze to neinstaloval..
No drzte palce mam na usb nainstalvany ubuntu a zkusim to skrz linux nakopcit na hdd…
Jinak smazat a nova instalace, pac jineho nejde ani posledni funkcni bod.
Uz jsem vymontoval z notasu hdd, ale ten je jine konstrukce (na zacvaknuti) a na to nemam zadny externi radic (a to mam na ruzne druhy (na zasunuti do pinu 2.5″ a 3.5″), ale tento typ ne.. (listy-noze) to bych musel asi vymontovat radic z notasu a prepajet…)
Dekuji za radu pro priste na jinem kompu…