Восстановление hal.dll. Очень срочно!

Компьютеры, программы, периферия, коммуникации, интернет, программирование и т.п. Ранее назывался Hard-n-Soft.
Сообщение
Автор
Div

№ 0 Сообщение Div » 04 авг 2004 15:28

Ситуевина такая
Есть диск (IBM 20гб), разбитый на два. На первом виндос МЕ, на втором- ХР. При операциях в ХР произошел какой-то сбой, говорила, что файлы не те заменены, после перезагрузки - не грузится, говорит hal.dll нет, подсунули этот файл, говорит следующего нет и т.д. Вообщем надо очень и срочно достать документы, которые лежали в Document & setting, особенно на рабочем столе XP.

Нужны конкретные советы

shakti
Аватара пользователя

№ 1 Сообщение shakti » 04 авг 2004 15:48

1.Снять диск и подключить его не другом, "NTFS-совместимом" компьютере. При наличии рядом такого компьютера -15 минут.
2.Если ME загружается, то скачать в инете утилиту, позволяющую ей видеть NTFS диски и забирать с них файлы – от 10 минут до получаса при различных навыках работы с компом.
3.Восстановить систему с помощью загрузочного диска, или установить её снова по-верх старой (можно и рядом – но потом чистить придётся больше) без форматирования диска – около одного часа.

Div

№ 2 Сообщение Div » 04 авг 2004 19:03

Когда hal.dll уходит наверх, он уносит с собой половину папок и файлов, поэтому никакой их очевидных вариантов не подходит.

shakti
Аватара пользователя

№ 3 Сообщение shakti » 04 авг 2004 20:16

2: Div

Это Вы о чём? Куда кто уходит? Что уносит? Как Dynamic Link Library может что-то с собой унести?

Если хотите, а напишу Вам, как это исправить. Но попозже - очень кушать хочется (-:

Div

№ 4 Сообщение Div » 04 авг 2004 21:42

Хочу
Для конкретики:
заглянуть на порченный диск могу любым способом, но многих папок там нет, в частности необходимой "рабочий стол" (нигде никакой)

shakti
Аватара пользователя

№ 5 Сообщение shakti » 04 авг 2004 22:22

По порядку. Сначало то, чему меня учили в школе на уроках информатики.

hal.dll

HAL (Hardware Abstraction Level) это то что находится между различными драйверами и ядром. И если не ошибаюсь - языконезависимый компонент в WinNT системах.

DLL (Dynamic Link Library) – это динамически подключаемая библиотека, или библиотека динамической компоновки связей.

Файл с расширением *.dll, содержащий библиотеку многократно исполняемых модулей, как то:объектов, процедур... Компоновка с которыми выполняется не до загрузки программы, а при появлении ссылки на модуль во время её исполнения. Они придуманы для того, чтобы уменьшить размеры программ и позволять вносить изменения только в один файл *.dll, а не отдельно в каждую программу, в которой он используется. И не могут они “ при уходе наверх уносить с собой половину папок и файлов” . НЕ МОГУТ.
Поэтому все способы, которые я описала выше – должны работать. И мало того, работают и не раз опробованы. В том числе и мной.
Есть ещё один способ. По сети. У любого уважающего себя сетевого системного администратора должны быть программы-утилиты, которые позволяют видеть диски на включённом компьютере, даже если система не загружена.
И ещё один способ вспомнила. Загрузить систему с Livе CD, которая понимает NTFS, и скопировать нужные файлы на временный внешний носитель.

Единственное, что могло случится с потерей файлов, если Вы натворили там что-то совсем сложное, что привело к сбою системы и аварийному выключению, или перезагрузке. А потом Вы, или система сама, пользовались после этого программой ScanDisk. В этом случае при загрузке в режиме восстановления ХР могла все файлы из “моих документов” и “рабочего стола” запрятать в скрытую (иногда и не скрытую) папку Found.000 (001, 002 и т.д.) в корневом каталоге диска, где они находились. С папками она тоже могла так поступить, преобразовав их в файлы. Только все это в ней теперь имеет расширение *.chk и имена написаны абракадаброй.

Это происходит из-за ошибок, которые появляются в файловой системе. Чаще это было с FAT-ом, но и в NTFS встречается, хотя она достаточно стабильна к сбоям. ScanDisk при работе находит эти цепочки из “ничейных” кластеров и преобразовывает их в такие файлы.
Если это действительно так, то теперь Вам придётся восстанавливать их самому. Ручками это делать достаточно сложно. Непонятно, что за файлы, какой программой открывать, надо предварительно просматривать.
Можно воспользоваться утилитой SiDiRec, целью работы которой и является вернуть такие файлы на их законное место, без лишней головной боли.
Взять можно здесь: http://www.donkey-tools.de/index.php?se ... ec&page=dl
Но могу и почтой выслать, весит 82 грамма – маленькая. Незнаю только, будет ли она работать на другой(новой) системе - обращается ли она для работы к системе, как таковой и к файловой в частности, или использует только информацию, которая хранится в самих файлах. По логике должна работать везде.

Мой Вам совет. Никогда не храните важные файлы на рабочем столе. Лучше создавайте для них ярлыки, если это удобно и необходимо. И для папки “Мои документы” тоже лучше завести отдельную папочку в корневом каталоге диска, назвав её, как вам удобно, а потом в свойствах настоящей папки “Мои документы” прописать путь на неё. Иначе можно и потерять всё при неблагоприятном стечении обстоятельств именно из за странных свойств системы - все основные потери данных приходятся как раз на “системные” папки, в которых она по умолчанию пытается сохранить файлы. Я не знаю, как это обьяснить.
Надеюсь вам не надо напоминать, что лучше чаще это архивировать на внешних носителях, а вообще создать для документов, особенно важных, отдельный раздел диска. Это позволит без страха тяжелейшей утраты "восстанавливать" систему, используя предварительно format c:

А вообще хотя бы при экспериментах с системой пытайтесь соблюдать элементарную осторожность: делайте бэкап всего диска, удаляйте все резидентные программы из памяти, снимайте все разгоны – не ленитесь, устанавливайте максимальные тайминги, дефрагментацию на всех разделах... Да и вообще создавайте аварийные загрузочные дискеты/диски. Хлеба же не просят. Да и работы не пять минут. Сами же видите – давно бы “окупилось”. Иначе вообще можно безвозвратно потерять всё, что накопили.

Но вернёмся к нашим барашкам.

Обычно черный экран с надписью “не найден файл hal.dll” появляется, когда на машине стоят две системы. И как правило не связано с тем, что этот файл куда-то пропадает, или его кто-то портит. Тем более другая система. Это происходит из за того, что другая система, не та, которая не загружается, при выполнении юзером каких-либо “действий” меняет загрузочную область. Чаще MBR (Master Boot Record).

Во-первых можно попытаться восстановить прежнее значение MBR таким способом: загрузиться с диска, или дискеты под DOS и с помощью команды fdisk /mbr попытаться восстановить прежнее его значение. Но это может и не сработать – это зависит от того, какие “операции с XP” вы совершали.

Во-вторых. Обычно это происходит, когда одна система уже установлена и проверена на работоспособность, начинается установка второй системы. Или при “операциях” (чаще разбиения на разделы), которые каким либо образом изменяют номера партиций.
К примеру в файле boot.ini (в корневом каталоге системы) осталась запись:
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional RU" /fastdetect
а на самом деле она должна выглядеть(к примеру) уже:
multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Professional RU" /fastdetect
Чтобы это исправить, нужно опять же загрузиться с диска, но уже с ХР (в режиме отладки, или восстановления – не помню уже, из Recovery Console короче, кнопочка “R” нажимается, когда нужно) и отредактировать указанный файл, прописав в него правильные параметры. Узнать их правильное значение можно, выполнив команду diskpart.

В-третьих. Это уже при повреждения файла hal.dll Такое могло тоже случиться при различных “аппаратных играх” и недопустимых изменениях конфигурации. Так же при сбоях и повреждениях диска. Скандиск, как описывала выше, тоже мог байтики свои приложить. В этом случае его придётся заново “подкинуть” системе. И вероятнее всего, Вам придётся взять этот файл с диска с системой, загрузившись опять же в режиме Recovery Console. Команда, которая сделает это, выглядет так: expand Х:\i386\hal.dl_ Y:\windows\system32\hal.dll. В данном случае X – это СD-ROM, а Y – сами понимаете. В архиве диска нужный нам файл хранится в виде hal.dl_, но это один и тот же файл. Он переименуется в процессе копирования. В прочем его вы можете взять откуда угодно, хоть вытащить из архива driver.cab, главное, чтобы он был заведомо здоровый. Ну а потом команда exit, затем reboot.

Все проблемы, которые у меня встречались с этим файлом всегда решались одним из этих способов. Есть ли ещё какие-то, я не знаю. И честно скажу – никогда не сталкивалась с ситуацией, когда при замене файла hal.dll система начинала спрашивать ещё какие-то. После этого обычно начинает загружаться ядро системы. Если оно не исправно, какие ещё могут быть файлы? Впрочем... Может только я не сталкивалась.

В любом случае желаю удачи.

GrAnt
Аватара пользователя

№ 6 Сообщение GrAnt » 05 авг 2004 06:41

Загрузись с Windows XPE и нареж/скинь на флэшку всё необходимое
Загрузочный диск Windows XPE Web Edition
Многие уже слышали про то, что у линуксоидов сейчас вошло в моду делать разные LiveCD под различные дистрибутивы линуха. Тот же KNOPPIX.
Для тех, кто не знает, что это такое поясняю - это готовые операционные системы на диске, которые для своей работы не требуют наличия хард-дисков. Операционка грузится с диска в память и можно работать.

А почему бы не сделать точно такой же диск, но не с Линуксом, а с привычным нам Windows? И вот, это осуществилось :)
Единственный человек, который это реализовал на должном уровне - Garik, за что ему большой респект!

ОПИСАНИЕ: Диск представляет собой урезанную версию Windows XP, которая загружается с CD.
Основное назначение диска - проверка системы на вирусы, работа с файловой системой NTFS, изменение разделов диска, восстановление данных, восстановление или изменение паролей доступа к ОС Windows 2000/XP, резервное копирование данных, сохранение данных по сети с незагружающихся систем и т.п.

РАБОТА С ДИСКОМ:
- В качестве оболочки(shell) используется стандартный Explorer.
- размер виртуального диска в памяти = Объем памяти компьютера/4, но не более 64 MB.
- По умолчанию Windows XPE загружается с разрешением экрана в 800x600x16bit.
- Установлены лишь основные русские шрифты, если вы запускаете программу, которая использует шрифт отсутствующий в Windows XPE, то, естественно, будут отображаться кряказяблики.
- Через иконку в трее можно устанавливать/убирать параметр Eject media. При установленном параметре вы можете извлекать системный (загрузочный) диск во время работы. Однако, большая часть операций в Explorer потребует доступа к системному диску. Например, у вас только один CD(DVD)-RW и вы загружаете диск с него, но после загрузки вам необходимо использовать привод для записи, для этого: запустите Sateira CD&DVD Burner, полностью создайте/настройте проект по записи ваших данных и только перед нажатием кнопки начала записи извлеките системный диск и вставьте носитель для записи. Сразу после окончания записи опять вставите системный диск. Такой подход позволяет избежать случайных действий, которые приведут к необходимости доступа к системному диску, когда он отсутствует. Если на загружаемой системе 2 и более CD(DVD)-ROM(RW), то, конечно, все это не требуется.
- "Горячее" подключение/отключение внешних устройств отсутствует. Если вам нужно подключить, например, флэш-диск, то сделайте это до загрузки ОС.
- Для Kaspersky Anti-Virus используются расширенные базы, а не стандартные. Используйте с умом.

- Поддержка сетевых карт:
Realtek RTL8150 USB 10/100 Fast Ethernet Adapter
Realtek RTL8139/810x/8169/8110
Intel PRO/1000 Gigabit (8254x-based PCI Ethernet Adapters)
Intel PRO/100b (8255x-based PCI Ethernet Adapters)
nVidia nForce Ethernet
Broadcom 440x series
Broadcom NetXtreme (57xx and 59xx, 3com 3c99x)
Netgear FA101 USB Fast Ethernet
3Com Gigabit LOM (3C940/3C2000)

- Поддержка Raid-контролеров:
Adaptec ATA RAID 1200A
Adaptec Serial ATA HostRAID
Adaptec SCSI RAID 2200S,2120S,2020S,2025S,2410SA,5400S
Adaptec I2O RAID Adapter
ASUS DA2000 Series RAID Adapter
Intel(R) 82801ER SATA RAID Controller
Intel bnu31
Compaq Smart Array 5x and 6x Controller
ITE IT8212 ATA RAID Controller
LSI Logic MegaRAID & HP NetRAID Controller
IBM ServeRAID 4M/4L/4Mx/4Lx/5i/6M/6i Controller
Promise FastTrak133 Lite Controller
Promise FastTrak TX4000/S150 TX Series
Silicon Image 3x12 Serial ATA Raid
SiS 180 RAID Controller
VIA Serial ATA RAID Controller
3ware Escalade 7000/8000 Series ATA RAID Controller

Софт, который входит в комплект(описание от автора):
Akelpad 1.04
Paragon HDD Manager 5.5 Полный комплект(там 6 прог)
DreamPackPL (version 2004.6.10)
Drweb 4.31b
EasyRecoveryPro 6.04
Lavalys EVEREST Professional 1.10.106
Symantec Ghost 7.7 Corporate Edition + Ghost Explorer 2003.775
Kaspersky Anti-Virus 4 (когда выйдет pro версия 5 буду пытаться его засунуть в WINXPE)
Nokia Monitor Test 1.0
Opera 7.23 (Обновлять не вижу смысла - задачи у диска далеки от вебсерфинга, только время тратить)
QSoft Ramdisk (это часть системы)
Saminside 2.2.4.1 (от NhT)
Sateira CD&DVD Burner 1.32 (от NhT)
VoptXP 7.13 (Для дефрагментации NTFS)
Winrar 3.30 (Полностью интегрирован, можно пользоваться контекстным меню)
+ маленькие проги/тесты вроде Dtemp, S&M, Drive!

BadBlock
Аватара пользователя
Благодарил (а): 1586 раз
Поблагодарили: 8126 раз

№ 7 Сообщение BadBlock » 05 авг 2004 10:03

6: GrAnt

И где взять это чудо?

BIL
Аватара пользователя
Не админ нифига
Благодарил (а): 1 раз
Поблагодарили: 7 раз

№ 8 Сообщение BIL » 05 авг 2004 10:04

Все логично, но позволю себе добавить...

shakti :
> По порядку. Сначало то, чему меня учили в школе на уроках информатики.
>
> hal.dll
>
> HAL (Hardware Abstraction Level) это то что находится между различными драйверами

Layer

> и ядром. И если не ошибаюсь - языконезависимый компонент в WinNT системах.

Это какой-то другой компонент :) Его можно назвать (исходя из перевода) - общим интерфейсом ко всем аппаратным компонентам. Именно layer - прокладка.

> DLL (Dynamic Link Library) – это динамически подключаемая библиотека, или библиотека динамической компоновки связей.

Не "библиотека динамической компоновки связей".

> Они придуманы
> для того, чтобы уменьшить размеры программ и позволять вносить изменения только
> в один файл *.dll, а не отдельно в каждую программу, в которой он используется.

Для этого придумали .lib
DLL придумали для того, чтобы В ПАМЯТИ не дублировать код нескольких однотипных программ.

> Есть ещё один способ. По сети. У любого уважающего себя сетевого системного
> администратора должны быть программы-утилиты, которые позволяют видеть диски
> на включённом компьютере, даже если система не загружена.

Это круто...

> Мой Вам совет. Никогда не храните важные файлы на рабочем столе. Лучше создавайте
> для них ярлыки, если это удобно и необходимо. И для папки “Мои документы” тоже
> лучше завести отдельную папочку в корневом каталоге диска, назвав её, как вам
> удобно, а потом в свойствах настоящей папки “Мои документы” прописать путь
> на неё. Иначе можно и потерять всё при неблагоприятном стечении обстоятельств

Мой же совет - сохраняйтесь. В этом случае предохраняться необязательно. :)

> Обычно черный экран с надписью “не найден файл hal.dll” появляется, когда на
> машине стоят две системы.

Да нет. Черный экран - это необычность.

> Это происходит
> из за того, что другая система, не та, которая не загружается, при выполнении
> юзером каких-либо “действий” меняет загрузочную область. Чаще MBR (Master Boot
> Record).

Вряд ли. Система УЖЕ ищет свою часть, значит этапы MBR и BR УЖЕ позади.

> Во-первых можно попытаться восстановить прежнее значение MBR таким способом:
> загрузиться с диска, или дискеты под DOS и с помощью команды fdisk /mbr попытаться
> восстановить прежнее его значение. Но это может и не сработать – это зависит
> от того, какие “операции с XP” вы совершали.

Описанное действие обновляет "загрузчик" MBR, т.е. задумано для удаления "бутовых" вирусов из MBR. Таблицу разделов данная операция не трогает, а, судя по результатам, свое дело загрузчик делает.

> К примеру в файле boot.ini (в корневом каталоге системы) осталась запись:
> multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional
> RU" /fastdetect
> а на самом деле она должна выглядеть(к примеру) уже:
> multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Professional
> RU" /fastdetect

В этом случае дело до hal.dll не дойдет.

> Все проблемы, которые у меня встречались с этим файлом всегда решались одним
> из этих способов. Есть ли ещё какие-то, я не знаю. И честно скажу – никогда
> не сталкивалась с ситуацией, когда при замене файла hal.dll система начинала
> спрашивать ещё какие-то. После этого обычно начинает загружаться ядро системы.
> Если оно не исправно, какие ещё могут быть файлы? Впрочем... Может только
> я не сталкивалась.

Скорее всего это четвертый случай. Как следует из первого сообщения, происходила работа с файлами. При их реорганизации произошел сбой (скорее всего памяти) и система гнилой буфер (образ) какого-нибудь каталога(ов) ввалила на место изменяемого. А возможно была прервана критическая операция - reset'ом, например, когда КАЗАЛОСЬ, что все висит. Сразу потерялись связи с другими каталогами и так далее. Отсюда и потерянные файлы и каталоги. А hal.dll среди них просто первый... Если это так - пытаться "лечить" диск. Должны быть найдены несвязанные кластеры. Если программа не сможет сама определить принадлежность их файлам - занятие гиблое.

shakti
Аватара пользователя

№ 9 Сообщение shakti » 05 авг 2004 11:22

8: BIL

Спасибо огромное за поправки и уточнения. (-:

shakti
Аватара пользователя

№ 10 Сообщение shakti » 05 авг 2004 11:23

7: BadBlock

> И где взять это чудо?

Да вообще линками весь интернет полнится. Думаю и "не битые" отыщутся без труда. Дистриб небольшой относительно, метров 160 помоему. Даже на диалапе с вашими то скоростями часов за 12 скачать без труда можно.

shakti
Аватара пользователя

№ 11 Сообщение shakti » 05 авг 2004 11:23

4: Div

>> заглянуть на порченный диск могу любым способом, но многих папок там нет, в частности необходимой "рабочий стол" (нигде никакой)

> Скорее всего это четвертый случай. Как следует из первого сообщения, происходила работа с файлами.

Кстати да! Вы бы написали подробней, какие-такие операции с системами проводились. И тогда уже исходя из конкретики можно думать, какие шаги первыми предпринимать логичней. Вариантов-то очень много. Как поломок, так и восстановления.

Div

№ 12 Сообщение Div » 05 авг 2004 18:43

Ну конкретно это произошло после установки драйверов для LCD, хотя может просто совпадение. Было несколько сообщений о том, что произошла замена файлов ядра или что-то такое и предложение вернуть все назад вроде бы, с использованием дистрибутива, которого не было. После отказа с рабочего стола пропали все свои файлы, кроме стандартных (корзина, мой комп и т.д.). Перезагрузка и см.№0

shakti
Аватара пользователя

№ 13 Сообщение shakti » 05 авг 2004 20:49

12: Div

Тогда похоже это именно тот случай с "аппаратными играми", который образно BIL #8 в конце сообщения описал. Затруднительное состояние. Правда я вот до конца так и не могу "придумать", куда могли подеваться документы, которые не являются системными файлами. Скандиском Вы не пользовались и папок Found.00Х нет? Прикольно )-:

Систему Вы так и не восстановили?

shakti
Аватара пользователя

№ 14 Сообщение shakti » 05 авг 2004 20:56

12: Div

А вы пробовали найти эти файлы поиском? По названиям, по расширениям?

Div

№ 15 Сообщение Div » 06 авг 2004 16:20

>Скандиском Вы не пользовались и папок Found.00Х нет?
Нет
>А вы пробовали найти эти файлы поиском? По названиям, по расширениям?
В папки recent, вроде, есть ярлыки c именами пропавших файлов и все

shakti
Аватара пользователя

№ 16 Сообщение shakti » 06 авг 2004 18:31

15: Div

Да. Уж. Признаться - случай, мне незнакомый. Мне трудно его смоделировать жаже в голове. Сбой понятный. А вот почему и куда исчезли файлы документов, я даже предположить немогу. Никогда такого небыло. Почему система их потеряла? Читала здесь тему, в которой два "безумца" живо обсуждали поведение системы при уходе в спящий режим, но там проблема была в том, что старые данные, восстанавливающиеся из виртуалки, заменяют собой новые, созданные в другой системе. Сюда это не пришить наверное.

Давай BIL`a позовём? Может он что умного ещё скажет? Я в затруднении.

> В папки recent, вроде, есть ярлыки c именами пропавших файлов и все
Так попытка восстановит/ переместить ь к чему привела? Из recenta исчезли и нигде не появились?

Если файлы совсем-совсем невосполнимые, то можно воспользоваться утилитами разными. Их много есть - которые потерянные данные находят и даже с отформатированных дисков их достают. Я пробовала из интереса и неверия. Результаты некоторые фантастические обеспечивают. Может поможет?

Div

№ 17 Сообщение Div » 06 авг 2004 22:07

16: shakti
Пробовал разными. Самая лучшая, на мой взгляд, R-studio, лучшие результаты дает. Находит папку "рабочий стол", но показывает её пустую и восстановить не может. Пропавшую также папку с документами, располагавшуюся в том же месте где и "рабочий стол", также находит и показывает файлы в ней, но говорит, что практичеки все они побитые, что и оказывается при восстановлении

>Так попытка восстановит/ переместить ь к чему привела? Из recenta исчезли и нигде не появились?
А насчет этого ничего сказать не могу, увидел их, ткнул в парочку, ничего не произошло и ничего дальше делать не стал с ними

GrAnt
Аватара пользователя

№ 18 Сообщение GrAnt » 07 авг 2004 06:30

7: BadBlock
я слил отсюда, http://www.nht-team.org правда это было недели с две назад

BIL
Аватара пользователя
Не админ нифига
Благодарил (а): 1 раз
Поблагодарили: 7 раз

№ 19 Сообщение BIL » 07 авг 2004 08:26

shakti :
> Давай BIL`a позовём? Может он что умного ещё скажет?

А смысл? :)
Были бы файлы текстовые (txt), можно было бы побороться с каждым кластером. А двоичные все на одно лицо. Если специализированные программы не могут понять что откуда, то при малейшей фрагментации файлов дело безнадежное пытаться куски клеить. Странно, что программки не могут найти "остатки" от былых каталогов. Наверное, уже запись на диск была?

>
>> В папки recent, вроде, есть ярлыки c именами пропавших файлов и все
> Так попытка восстановит/ переместить ь к чему привела? Из recenta исчезли и
> нигде не появились?

В этой папке, по идее, лежат ИМЕНА недавно пользованных файлов. Т.е. те же самые ссылки в никуда...

Div

№ 20 Сообщение Div » 07 авг 2004 15:46

19: BIL
> Наверное, уже запись на диск была?
Да нет, не было, за исключением переписанных с другого компьютера hal.dll и нескольких файлов, которые система просила

BIL
Аватара пользователя
Не админ нифига
Благодарил (а): 1 раз
Поблагодарили: 7 раз

№ 21 Сообщение BIL » 07 авг 2004 16:28

Div :
> Да нет, не было, за исключением переписанных с другого компьютера hal.dll и
> нескольких файлов, которые система просила

Да этого уже достаточно, в принципе. Если везет как мне, то уже hal.dll лег на место, где когда-то каталог был записан...

Вернуться в «Компьютерный форум»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей