Как попасть в реестр российского ПО? Какие документы нужны для регистрации программ

Модель многокомпонентных объектов (Component Object Model — СОМ) является основным средством взаимодействия программ любых типов: библиотек, приложений, системного программного обеспечения и т.п. и определяет стандартный механизм, с помощью которого одна часть программного обеспечения ( сервер ) предоставляет свои сервисы другой ( клиент ) , что обеспечивается применением определенных протоколов взаимодействия между ними ( между клиентом и сервером). В качестве сервера может использоваться динамически подключаемая библиотека (DLL), подгружаемая во время работы приложения, либо отдельный самостоятельный процесс, который может быть компонентом прикладной или системной программы, или даже процесс, выполняющийся на другом компьютере. Для нахождения нужного клиенту сервера, используется специальная информация из реестра Windows, которая формируется в при регистрации сервера в системе, чаще всего, в виде модуля динамически загружаемой библиотеки DLL. Регистрация необходима, поскольку программы работают не с самими файлами DLL, OCX, ACX, EXE, а с объектами, представляющими определенный набор программных интерфейсов. Для регистрации DLL используется следующие разделы реестра:

HKLM\SOFTWARE\Classes\CLSID – при регистрации COM-объектов библиотек для всех пользователей системы;

HKCU\SOFTWARE\Classes\CLSID – при регистрации COM-объектов библиотек только лишь для текущего пользователя;

HKLM\SOFTWARE\Wow6432Node\Classes\CLSID – для регистрации 32-битных DLL в 64-битных ОС Windows;

При регистрации, в указанном разделе реестра создается ключ с именем, эквивалентным глобальному уникальному идентификатору GUID регистрируемого оюъекта. GUID применительно к СОМ, является идентификатором класса. Чтобы отличать идентификаторы классов от других идентификаторов, для них используют подраздел реестра с именем CLSID. GUID представляет собой 128-разядное 16-ричное значение, заключенное в фигурные скобки:

При регистрации в реестре создается подраздел с именем, соответствующим идентификатору GUID, содержащий информацию о пути и имени исполняемого файла, его версии, времени регистрации, сведения о разработчике, и прочие параметры, определяющие специфические свойства регистрируемого объекта. Удаление или повреждение данных регистрации приводит к неработоспособности зарегистрированного компонента системы или прикладной программы, что, как правило, сопровождается сообщением об ошибке поиска DLL и предложением переустановить проблемное программное обеспечение. Вместо переустановки вполне можно обойтись перерегистрацией поврежденного объекта с помощью утилиты regsvr32.exe, имеющейся во всех версиях операционных систем семейства Windows .

Утилита regsvr32.exe является стандартной программой командной строки для регистрации и отмены регистрации элементов управления OLE, ActiveX и библиотек DLL в реестре Windows. В 64-разрядных версиях Windows присутствуют две версии файла regsv32.exe:

– 64-разрядная версия в каталоге %systemroot%\System32 (обычно – C:\Windows\System32)

– 32-разрядная версия в каталоге %systemroot%\SysWoW64 (обычно – C:\Windows\SysWoW64)

Для работы утилиты требуются повышенные привилегии, поэтому окно командной строки должно вызываться с правами администратора ( ”Запуск от имени администратора”).

При запуске regsvr32.exe без параметров командной строки, либо при запуске с неверными параметрами, отображается подсказка:

Подсказка по использованию regsvr32

Формат командной строки REGSVR32:

/u — – вызывает DllUnInstall, отменяет регистрацию сервера

/i — вызывает DllInstall, передавая ей в параметре необязательную строку_команд;

/n — не вызывает DllRegisterServer; может использоваться с ключом /I;

/s – “тихий” режим; окна сообщений не отображаются;

Примеры использования regsvr32. exe

regsvr32 /u “C:\Program Files\7-Zip\7-zip32.dll” – отменить регистрацию указанной DLL. При успешной отмене отображается сообщение:

Подсказка по использованию regsvr32

Для подавления вывода сообщения, используется параметр /s:

regsvr32 /u /s “C:\Program Files\7-Zip\7-zip.dll”

В результате выполнения данной команды, из контекстного меню Проводника Windows, вызываемого правой кнопкой мышки, исчезнет пункт архиватора 7-Zip. Для его восстановления необходимо выполнить регистрацию 7-zip.dll командой:

regsvr32 “C:\Program Files\7-Zip\7-zip.dll”

Необходимо не забывать о разрядности регистрируемых объектов в 64-разрядных версиях ОС. В случае необходимости регистрации 32-разрядного объекта, нужно явно указать путь для 32-битной редакции утилиты regsvr32:

Или без использования переменных окружения:

В качестве дополнительного программного средства для управления регистрацией объектов COM, очень удобно пользоваться бесплатной утилитой от Nirsoft RegDLLView.exe. Программа не требует установки в системе, имеет небольшой размер и позволяет:

– Получить в удобном виде список всех зарегистрированных в системе объектов.

– Сохранить в текстовом файле или в HTML-формате параметры всех или выделенных из списка зарегистрированных DLL.

– Выполнить регистрацию или отмену регистрации выбранных объектов.

– Создать reg-файл для выполнения отмены регистрации одной или нескольких DLL.

– Зарегистрировать или перерегистрировать указанный файл.

RegDLLView – работа с регистрацией и отменой регистрации DLL

Кроме того, имеется возможность проверить цифровые подписи исполняемых файлов зарегистрированных объектов, просмотреть или изменить их свойства, а также выполнить запуск редактора реестра с отображением информации выбранного GUID через пункт контекстного меню ”Open in Regedit”, вызываемого правой кнопкой мышки.

Страница с описанием RegDllView и ссылками для скачивания 32-х и 64-х разрядных версий программы.


Весь список команд CMD Windows

Общие сведения о реестре Windows

Особенности реестра Windows Vista и более поздних ОС семейства Windows

Сохранение и восстановление реестра

Мониторинг реестра

Автозапуск программ.

Драйверы и службы.

Драйверы и службы для безопасного режима.

Список установленных программ .

Пароли приложений в реестре.

Ассоциации расширений файлов и приложений.

Ограничение доступа пользователя к ресурсам системы.

Некоторые практические примеры и советы

Общие сведения о реестре Windows

Файлы реестра создаются в процессе установки операционной системы и хранятся в
папке %SystemRoot%\system32\config (обычно C:\windows\system32\config).
Для операционных систем Windows это файлы с именами

default
sam
security
software
system
.
В операционных системах Windows Vista/Windows 7/8/10, файлы реестра располагаются также в каталоге \Windows\system32\config и имеют такие же имена, однако в этих ОС добавился новый
раздел реестра для хранения данных конфигурации загрузки (Boot Configuration Data) с именем BCD00000000 . Файл с данными этого раздела имеет имя bcd и находится в скрытой папке Boot активного раздела ( раздела, с которого выполняется загрузка системы). Обычно, при стандартной установке Windows 7, создается активный раздел небольшого размера ( около 100 мегабайт), который скрыт от пользователя и содержит только служебные данные для загрузки системы – загрузочные записи, менеджер загрузки bootmgr, хранилище конфигурации загрузки BCD, файлы локализации и программы тестирования памяти . Расположение куста bcd зависит от того, как сконфигурирован загрузчик системы при ее установке, и может находиться на том же разделе, где и каталог Windows.

Место расположения файлов реестра в любой версии Windows можно просмотреть с помощью редактора реестра. В разделе
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist хранится информация о всех кустах, включая пользовательские профили, со ссылками на их расположение в файловой системе Windows.

   
В процессе
загрузки система получает монопольный доступ к файлам реестра и, поэтому,
их невозможно открыть для просмотра, скопировать, удалить или переименовать обычным образом. Для работы с содержимым системного реестра используется специальное
программное обеспечение – редакторы реестра (REGEDIT.EXE, REGEDT32.EXE),
являющиеся стандартными компонентами операционной системы. Для запуска
редактора реестра можно использовать меню кнопки “Пуск”- “Выполнить” – regedit.exe

Редактор реестра Windows

корневых разделов (root keys)

вложенные
разделы (subkeys)

параметры (value entries) или ключи реестра.

HKEY_CLASSES_ROOT (

HKCR

)

HKEY_CURRENT_USER (HKCU)

Идентификатор SID представляет собой числовое значение переменной длины, формируемое из номера версии структуры SID, 48-битного кода агента идентификатора и переменного количества 32-битных кодов субагентов и/или относительных идентификаторов (Relative IDentifiers, RID). Код агента идентификатора определяет агент, выдавший SID, и обычно таким агентом является локальная операционная система или домен под управлением Windows. Коды субагентов идентифицируют попечителей, уполномоченных агентом, который выдал SID, а RID – дополнительный код для создания уникальных SID на основе общего базового SID.
Для идентификатора S-1-5-21-854245398 -1035525444: 1000, номер версии равен 1, код агента идентификатора – 5, а далее следуют коды четырех субагентов. В Windows NT и старше, при установке системы, создается один фиксированный (код 21) и три генерируемых случайным образом (числа после “S-1-5-21”) кода субагентов. Также в процессе установки создаются некоторые (одинаковые для всех систем) учетные записи, как например, учетная запись администратора, которая всегда имеет RID равный 500

Для просмотра соответствия SID и имени пользователя можно воспользоваться утилитой
PsGetSID.exe из пакета
PSTools

HKEY_LOCAL_MACHINE (HKLM) – в данном разделе реестра хранятся глобальные аппаратные и программные настройки системы – записи для системных служб, драйверов, наборов управляющих параметров, общие настройки программного обеспечения, применимые
ко всем пользователям. Это самая большая и самая важная часть реестра. Здесь сосредоточены
основные параметры операционной системы, оборудования, программного обеспечения.

HKEY_USERS( HKU) – индивидуальные настройки среды для каждого пользователя
системы (пользовательские профили) и профиль по умолчанию для вновь создаваемых
пользователей.

HKEY_CURRENT_CONFIG (HKCC) – конфигурация для
текущего аппаратного профиля. Обычно профиль один единственный, но имеется возможность
создания нескольких с использованием “Панель управления” – “Система” – “Оборудование”-
“Профили оборудования”. На самом деле HKCC не является полноценным
разделом реестра, а всего лишь ссылкой на подраздел из HKLM
HKLM\SYSTEM\Current ControlSet\Hardware Profiles\Current

:/>  Windows 10: диск загружен на 100% - решение

Параметры или ключи реестра имеют имена, представленные в обычном текстовом виде и значения, которые хранятся в виде стандартизированных записей определенного типа. Допустимые типы данных реестра:

REG_BINARY – двоичный параметр. Большинство сведений об аппаратных компонентах хранится в виде двоичных данных и выводится в редакторе реестра в шестнадцатеричном формате.

REG_DWORD – двойное слово. Данные представлены в виде значения, длина которого составляет 4 байта (32-разрядное целое). Этот тип данных используется для хранения параметров драйверов устройств и служб. Значение отображается в окне редактора реестра в двоичном, шестнадцатеричном или десятичном формате. Эквивалентами типа DWORD являются DWORD_LITTLE_ENDIAN (самый младший байт хранится в памяти в первом числе) и REG_DWORD_BIG_ENDIAN (самый младший байт хранится в памяти в последнем числе).

REG_QWORD – Данные, представленные в виде 64-разрядного целого. Начиная с Windows 2000, такие данные отображаются в окне редактора реестра в виде двоичного параметра.

REG_SZ – строковый параметр.

REG_EXPAND_SZ – Расширяемая строка данных.
Многострочный параметр.
Многострочный текст. Этот тип, как правило, имеют списки и другие записи в формате, удобном для чтения. Записи разделяются пробелами, запятыми или другими символами.

REG_RESOURCE_ LIST – Двоичный параметр. Последовательность вложенных массивов. Служит для хранения списка ресурсов, которые используются драйвером устройства или управляемым им физическим устройством. Обнаруженные данные система сохраняет в разделе \ResourceMap. В окне редактора реестра эти данные отображаются в виде двоичного параметра в шестнадцатеричном формате.

REG_RESOURCE_ REQUIREMENTS_LIST – двоичный параметр. Последовательность вложенных массивов. Служит для хранения списка драйверов аппаратных ресурсов, которые могут быть использованы определенным драйвером устройства или управляемым им физическим устройством. Часть этого списка система записывает в раздел \ResourceMap. Данные определяются системой. В окне редактора реестра они отображаются в виде двоичного параметра в шестнадцатеричном формате.

REG_FULL_RESOURCE_DESCRIPTOR – двоичный параметр. Последовательность вложенных массивов. Служит для хранения списка ресурсов, которые используются физическим устройством. Обнаруженные данные система сохраняет в разделе \HardwareDescription. В окне редактора реестра эти данные отображаются в виде двоичного параметра в шестнадцатеричном формате.

REG_NONE – Данные, не имеющие определенного типа. Такие данные записываются в реестр системой или приложением. В окне редактора реестра отображаются в виде двоичного параметра в шестнадцатеричном формате.

REG_LINK – Символическая ссылка в формате Юникод.

При добавлении новых параметров в реестр, необходимо задавать не только имя и значение, а также правильный тип данных.

   
Возможности конкретного пользователя при работе с данными реестра
определяются правами его учетной записи. Далее по тексту, предполагается, если это
не оговорено особо, что пользователь имеет права администратора системы.

   
При просмотре данных реестра в среде Windows XP, 2 подраздела с именами SAM и
SECURITY, не отображаются, и доступ к ним разрешен только для локальной системной учетной
записью (Local System Account), под которой обычно выполняются системные службы
(system services). Обычно, учетные записи пользователей и даже администраторов, таких прав не имеют, и редактор реестра, запущенный от их имени, не отображает содержимое разделов SAM и SECURITY. Для доступа к ним нужно, чтобы regedit был запущен от имени учетной записи с правами Local System, для чего можно воспользоваться
утилитой PSExec

psexec.exe -i -s regedit.exe

Можно также воспользоваться стандартными средствами операционной системы, например,
планировщиком заданий. С помощью команды at создаем задание на
запуск regedit.exe в интерактивном режиме через 2-3 минуты от текущего
времени (например- в 16час 14 мин.)

at 16:14 /interactive regedit.exe

Поскольку сам планировщик работает как системная служба, то порожденная им задача
также будет выполняться с наследуемыми правами, а ключ /interactive позволит текущему пользователю взаимодействовать с запущенным заданием, т.е. с редактором реестра, выполняющимся с правами локальной системной учетной записи.

В Windows 7 разделы реестра SAM и SECURITY отображаются , однако не отображается их содержимое, для просмотра которого можно воспользоваться аналогичным приемом.

   

В процессе загрузки и функционирования операционной системы выполняется
постоянное обращение к данным реестра, как для чтения, так и для записи. Файлы реестра постоянно изменяются, поскольку не только система, но и отдельные приложения могут использовать реестр для хранения собственных данных, параметров и настроек. Другими словами, обращение к реестру – это одна из наиболее распространенных операций. Даже если пользователь не работает за компьютером, обращения к реестру все равно выполняются системными службами, драйверами и приложениями.

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

Особенности реестра Windows Vista и последующих версий ОС семейства Windows

HKEY_LOCAL_MACHINE\BCD00000000

Хранилище конфигурации загрузки BCD как раздел реестра

Этот раздел содержит объекты и
элементы конфигурации, используемые новым диспетчером загрузки BOOTMGR пришедшим на смену традиционному загрузчику
NTLDR. Раздел HKLM\BCD00000000 является системным хранилищем данных конфигурации загрузки
( BCD – Boot Configuration Data ) и физически, представляет собой файл реестра c именем bcd, находящийся в каталоге \BOOT активного раздела ( раздела
диска с загрузочной записью и файлом диспетчера BOOTMGR) . При стандартной установке Windows 7 на новый жесткий диск, в качестве активного раздела создается небольшой ( размером около 100Мб) раздел, который содержит файлы и каталоги, необходимые для работы диспетчера загрузки. Обычно, этот раздел скрыт от пользователя, поскольку ему не присваивается буква логического диска и к его содержимому невозможно получить доступ стандартными средствами, такими, как например “Проводник” Windows (Explorer) . При просмотре с использованием Диспетчера логических дисков, данный раздел отображается под названием “Зарезервировано системой” и имеет признак “Активный”.

Активный раздел Windows 7

Загрузочный сектор данного раздела (Partition Boot Sector или PBR) выполняет загрузку файла диспетчера bootmgr, который должен находиться в его корне. В свою очередь, диспетчер загрузки bootmgr для своих целей использует системное хранилище конфигурации, которое должно находиться в папке с именем BOOT .

Подразделы и ключи раздела HKLM\BCD00000000 имеют определенные имена, типы данных, и связи, которые обрабатываются диспетчером загрузки BOOTMGR и задают весь ход процесса дальнейшей загрузки – вид меню выбора загружаемых систем, таймаут выбора, систему, загружаемую по умолчанию, используемые устройства и приложения загрузки, и другие параметры. Иерархическая структура данных хранилища конфигурации загрузки не предназначена для редактирования с использованием редактора реестра и по умолчанию подраздел HKLM\BCD00000000 имеет разрешение только на чтение. Разрешение можно изменить с использованием контекстного меню, вызываемого правой кнопкой мыши, однако нужно учитывать то, что неквалифицированное изменение отдельных параметров данной ветви реестра может нарушить конфигурацию и системная загрузка станет невозможной. Тем не менее, экспорт данных ветви реестра HKLM\BCD00000000 иногда полезен, как дополнительная возможность анализа конфигурации загрузки в удобном для просмотра виде, а импорт – как восстановление ранее сохраненных данных BCD.

Для работы с данными конфигурации загрузки используется специальная утилита командной строки BCDEDIT.EXE , позволяющая сохранять конфигурацию, восстанавливать из ранее сохраненной копии, просматривать содержимое хранилища, редактировать отдельные объекты конфигурации и их элементы . Новый механизм загрузки операционных систем семейства Windows довольно сложен для понимания и не имеет прямого отношения к работе с реестром, поэтому привожу ссылки на дополнительные материалы:


BOOTMGR – новый диспетчер загрузки Windows Vista / Windows 7


BCDEDIT – редактор данных конфигурации загрузки BCD.

Сохранение и восстановление реестра

1. Использование точек восстановления (Restore Points)

точек восстановления (Restore Points)

Точки восстановления представляют собой набор файлов операционной системы и реестра, скомпонованный по определенным правилам и сохраняемый в виде подкаталога в скрытой системной папке System Volume Information. Сохраненные в точке восстановления данные позволяют, практически гарантировано, вернуть операционную систему к состоянию на момент их создания. При изучении реестра (и отсутствии практического опыта работы с ним) принудительное создание точки восстановления перед началом работы позволит восстановить работоспособность Windows даже в случае краха системы. Стандартное средство восстановления системы работает только в среде самой Windows, однако существуют способы, которые позволяют вернуть систему к жизни даже при возникновении “синего экрана смерти” по причине неудачного редактирования реестра. Об этом чуть позже.

   

Для восстановления системы используется
точками восстановления используется приложение “Восстановление системы” – \windows\system32\restore\rstrui.exe для Windows XP и \windows\system32\rstrui.exe

Rstrui.exe - Восстановление системы

   

Данные точек восстановления хранятся в каталоге
System Volume Information системного диска. Это скрытый
системный каталог, доступ к которому разрешен только локальной системной
учетной записи (Local System), или, другими словами, не пользователям, а
“Службе восстановления системы”.
Поэтому, если вы хотите получить доступ к его содержимому, вам придется
добавить права вашей учетной записи с использованием
вкладки “Безопасность” в свойствах каталога “System Volume Information”.

:/>  Редактирование uefi загрузчика windows 10

В случае Windows XP в папке System Volume Information есть подкаталог с именем, начинающемся с _restore… и внутри него – подкаталоги
RP0, RP1…
: – это и есть данные контрольных точек восстановления
(Restore Point – RPn) для Windows XP. Внутри папок RPn имеется каталог с именем snapshot ,
содержащий копии файлов реестра на момент создания контрольной точки. При выполнении
операции восстановления системы восстанавливаются основные системные файлы и файлы
реестра. Соответственно, например, если крах системы вызван установкой нового драйвера, то после отката на точку восстановления, даже при наличии в каталоге Windows исполняемого файла
драйвера, записи в реестре, обеспечивающие его загрузку, исчезнут, и система вернется в рабочее состояние. Подобным же образом можно избавиться от вирусного заражения, когда
выполняется откат системы на тот момент, когда в реестре еще не было записей, обеспечивающих запуск вредоносного ПО.

Структура данных точек восстановления для Windows 7 отличается от той, что используется в Windows XP. Начиная с ОС Windows Vista, используется не только копирование файлов реестра и важнейших системных файлов, но и создаются снимки файловой системы (snapshot) службой теневого копирования томов. Снимки файловой системы также хранятся в каталоге System Volume Information и представляют собой сжатые файлы, в имени которых содержится глобальный идентификатор:

{3808876b-c176 -4e48-b7ae-04046e6cc752}

Количество снимков зависит от настроек системы и наличия свободного места на диске.
Однако порядок отката системы на состояние сохраненной точки восстановления такой же, как и для Windows XP.

   
Откат системы на точку восстановления является простым и эффективным способом восстановления работоспособности без потери пользовательских данных не только в случаях неудачного редактирования реестра, установки некорректно работающего системного программного обеспечения, но и, например, при вирусном заражении компьютера, когда имеется точка восстановления на момент времени, когда вируса еще не было в системе. Именно поэтому многие вредоносные программы пытаются уничтожить данные точек восстановления и отключить средства восстановления системы. В подавляющем большинстве случаев, запуск внедрившегося вируса обеспечивается определенными записями в реестре, а после отката эти записи исчезнут, и вирус не сможет получить управление, и тем самым, будет нейтрализован даже без использования антивирусного программного обеспечения. Как видно, механизм точек восстановления довольно эффективен, но воспользоваться им можно только в среде самой Windows – для выполнения отката неработоспособной системы, стандартно, нужно в ней же и загрузиться. А если система повреждена настолько, что загрузка невозможна, задача становится невыполнимой. Тем не менее, выход из данной ситуации ( и даже не один) – есть. Можно, например, воспользоваться загрузочным диском Microsoft Diagnostic and Recovery Toolset (MS DaRT), он же (Winternals) ERD СOMMANDER (ERDC), – инструментом на базе специальной версии Windows PE, загружаемой с компакт диска или другого внешнего носителя. ERD Commander умеет работать с точками восстановления той ОС Windows, которая была
подключена к нему при загрузке, и позволяет легко выполнить откат на ее работоспособное состояние через меню
“Start – System Tools – System Restore”

Использование точек восстановления системы в ERD Commander

System Restore Wizard

Если же ERDC нет под рукой, или полный откат системы не нужен, можно воспользоваться ручным восстановлением отдельных файлов реестра, копии которых можно взять из данных точки восстановления для Windows XP, или из автоматически создаваемых копий файлов реестра в Windows 7. Для этого достаточно получить доступ к файловой системе жесткого диска с поврежденной Windows. Можно загрузиться в другой системе (Windows PE, Live CD, даже DOS с поддержкой файловых систем FAT32 / NTFS), получить доступ к данным системного диска проблемной Windows и просто заменить испорченный файл (ы) раздела реестра на файл (ы) из каталога точки восстановления .

Восстановление файлов реестра для Windows XP

В папке, где хранятся данные точек восстановления,
System Volume Information на системном диске, находим подкаталог с именем, начинающемся с
_restore… и внутри него – подкаталоги
RP0, RP1
: – это и есть искомые контрольные точки (Restore Point – RPx).
Внутри папки RPx открываем каталог SNAPSHOT,
содержащий копии файлов реестра, на момент создания контрольной точки.

REGISTRY_MACHINE_SYSTEM - это копия файла реестра SYSTEM

Файл REGISTRY_MACHINE_SYSTEM – это и есть копия файла SYSTEM, он же – раздел реестра HKEY_LOCAL_MACHINE\SYSTEM .
Остается лишь перетащить этот файл в каталог \WINDOWS\SYSTEM32\CONFIG\ и переименовать его.
Запорченный файл system можно, на всякий случай, переименовать в system.bad или удалить.

Обычно, для восстановления работоспособности поврежденной операционной системы, достаточно копирования только файла SYSTEM, поскольку именно в нем хранятся наиболее важные параметры, необходимые для загрузки и функционирования ОС. Копирование файла SOFTWARE влияет на изменение состава установленного программного обеспечения для всех пользователей. При необходимости восстановления настроек пользователя нужно взять соответствующий ему файл _REGISTRY_USER_NTUSER_S-1-5-21: и скопировать его в каталог профиля (для Windows XP – обычно это “:\Documents and Settings\Имя пользователя”) под именем ntuser.dat

Если при таком способе восстановления реестра будет использоваться ERD Commander, в режиме работы с выбранной Windows,
то могут возникнуть проблемы с занятостью файлов. Чтобы этого не случилось,
лучше в процессе загрузки не подключаться к проблемной операционной системе
и выбрать None:

None - не будет выполняться подключение к какой-либо системе

Восстановление файлов реестра для Windows 7 и более поздних ОС Windows

Для восстановления работоспособности Windows 7 и более поздних версий, удобнее всего воспользоваться средством Microsoft Diagnostic and Recovery Tools ( MS DaRT ), версии соответствующей версии и разрядности операционной системы. Для 32-разрядных и 64-разрядных ОС используются свои загрузочные диски. Наборы инструментов и их функциональные возможности, практически не отличаются от использовавшихся в ERD Commander, однако немного изменился их внешний вид и добавилась официальная поддержка русского языка. Описание работы с ERDC и MS DaRT 7.0 / 8.0 приводится в отдельной статье. В тех случаях, когда невозможно выполнить загрузку Windows, и запустить средство восстановления системы, инструменты MS DaRT позволяют выполнить ее откат на работоспособное состояние, практически так же, как и в случае с применением классического ERD Commander для Windows XP. Однако, описанный выше способ с частичной или полной заменой файлов реестра из данных точек восстановления применить не получится, поскольку возникает проблема извлечения их них отдельных кустов реестра. Тем не менее, в современных ОС семейства Windows существует более простая методика восстановления реестра, основанная на использовании автоматически создаваемых копий кустов (файлов реестра), создаваемых периодически специальной, задачей “Планировщика заданий”. Задача RegIdleBackup создается в библиотеке планировщика заданий и выполняется скрытно, вне зависимости от регистрации пользователя, по умолчанию, один раз в 10 дней. Параметры задачи и сведения о ее выполнении можно посмотреть с помощью оснастки “Панель управления”- “Администрирование” – “Планировщик заданий”.
Открыть дерево “Библиотека планировщика” – Microsoft – Windows – Registry .

Задание на архивирование файлов реестра в планировщике

Хотя задано время выполнения 00:00, в параметрах задачи установлен режим немедленного запуска, если просрочен плановый запуск. Таким образом, задача будет выполнена, даже если компьютер на момент планового запуска был выключен, и в случае успешного завершения, каталоге \windows\system32\config\RegBack будет создана резервная копия файлов реестра default, sam, security, software и system. Следовательно,
в тех случаях, когда восстановление системы стандартными средствами невозможно ( например, нет данных точек восстановления ), можно воспользоваться ручным копированием файлов реестра из каталога windows\system32\config\RegBack в каталог windows\system32\config так же, как и для случая описанного выше.

Кроме того, как уже упоминалось выше, в операционных системах Windows Vista и старше, при создании точки восстановления системы, создается и теневая копия тома, представляющая собой полный снимок файловой системы (snapshot, снапшот ), который тоже может помочь в восстановлении не только файлов реестра, но и любых других, существовавших на момент создания снимка. Для получения информации о существующих теневых копиях файловой системы можно воспользоваться командой:

vssadmin list shadows

Для доступа к данным теневых копий можно использовать , например, создание символической ссылки на корневой каталог теневой копии тома, командой:

mklink /D C:\shadow1 \\?\GLOBALROOT\Device\ HarddiskVolumeShadow Copy1\

Командная строка должна быть запущена от имени администратора.
После выполнения команды,
на диске C: появится папка shadow1 , содержимое которой представляет собой копию диска C: на момент создания точки восстановления. Более подробно о теневом копировании и использовании снимков файловой системы – в статье Восстановление данных с использованием теневых копий томов

:/>  Cmd. exe - что это? Cmd. exe - ошибка приложения

Для доступа к файлам и папкам из снимка файловой системы, можно использовать и сторонние программы, умеющие работать с томами теневых копий, как, например, популярная программа восстановления данных Recuva. Более подробно об использовании данных теневых копий рассказывается в отдельной статье по применению Recuva для эффективного восстановления файлов.

2. Использование утилиты для работы с реестром из командной строки REG.EXE
   
В ОС Windows 2000 утилита REG.EXE входила в состав пакета Support tools, в Windows XP , windows 7 /8 – входит в стандартный набор программ, устанавливаемых в процессе инсталляции системы. На практике, можно для Windows 2000 использовать REG.EXE из комплекта Windows XP – просто скопируйте ее в каталог \winnt\system32). Запускается из командной строки. При запуске без параметров
выдает краткую справку по использованию:


Программа редактирования системного реестра из командной строки, версия 3.0
(C) Корпорация Майкрософт, 1981-2001. Все права защищены

REG < Операция > [Список параметров]

< Операция > == [ QUERY | ADD | DELETE | COPY |
SAVE | LOAD | UNLOAD | RESTORE |
COMPARE | EXPORT | IMPORT ]

Код возврата: (за исключением REG COMPARE)

0 – Успешно
1 – С ошибкой

Для получения справки по определенной операции введите:

REG < Operation > /?

Примеры:

REG QUERY /?
REG ADD /?
REG DELETE /?
REG COPY /?
REG SAVE /?
REG RESTORE /?
REG LOAD /?
REG UNLOAD /?
REG COMPARE /?
REG EXPORT /?
REG IMPORT /?

Для резервного копирования реестра используется REG.EXE SAVE, для восстановления –
REG.EXE RESTORE

Для получения справки

REG.EXE SAVE /?

REG SAVE <раздел> <имя Файла>

<раздел> Полный путь к разделу реестра в виде: КОРЕНЬ\Подраздел
<КОРЕНЬ> Корневой раздел. Значения: [ HKLM | HKCU | HKCR | HKU | HKCC ].
<подраздел> Полный путь к разделу реестра в выбранном корневом разделе.
<имя Файла> Имя сохраняемого файла на диске. Если путь не указан, файл
создается вызывающим процессом в текущей папке.

Примеры:

REG SAVE HKLM\Software\MyCo\MyApp AppBkUp.hiv
Сохраняет раздел MyApp в файле AppBkUp.hiv в текущей папке

Для сохранения куста SYSTEM:

REG SAVE HKLM\SYSTEM system.hiv
Для сохранения куста SOFTWARE:
REG SAVE HKLM\SOFTWARE software.hiv
Для сохранения куста DEFAULT:
reg save HKU\.Default default.hiv

Если файл существует, то REG.EXE выдаст ошибку и завершится. В Windows 7, при наличии существующего файла, выдается стандартный запрос на разрешение его перезаписи.

    Сохраненные файлы можно использовать для восстановления реестра с использованием ручного копированием в папку %SystemRoot%\system32\config.

3. Ручное копирование файлов реестра.

   
Этот способ возможен, если имеется копия файлов реестра, созданная на момент работоспособного состояния. Как уже упоминалось выше, если загрузиться в другой ОС с возможностью доступа к файловой системе проблемной Windows, то с файлами из папки реестра можно делать все, что угодно. В случае повреждения файла system,
можно воспользоваться, например, сохраненным с помощью команды
REG SAVE файлом system.hiv, скопировав его в папку реестра и переименовав в system. Для Windows 7 – скопировать файл system из папки \windows\system32\config\RegBack в папку \windows\system32\config

4. Использование режима экспорта-импорта реестра.

Данный способ не является в полном смысле слова способом полного восстановления реестра и более подходит для случаев, когда нужно сохранить и затем восстановить определенную его часть. Редактор реестра позволяет делать экспорт
как всего реестра, так и отдельных разделов в файл с расширением reg Импорт
полученного при экспорте reg-файла, позволяет восстановить реестр. Щелкаете на “Реестр”–> “Экспорт
(Импорт) файла реестра”. Импорт также можно выполнить двойным щелчком по ярлыку reg-файла.

Вполне понятно, что наличие резервных копий реестра делает систему почти “не убиваемой”, однако, нередко случается так, что при возникновении необходимости восстановления реестра актуальной копии просто нет. Например, вирус отключил систему восстановления и удалил контрольные точки, а резервное копирование вручную просто не выполнялось. И если в Windows 7 существует задание планировщика для копирования файлов реестра, созданное при установке системы, то в Windows XP, такого задания нет, и, при нарушении целостности реестра,
шансов на восстановление становится меньше. Что бы исключить подобную ситуацию, было бы неплохо, позаботиться об автоматическом резервирования файлов реестра без участия человека. Например, с помощью командного файла, выполняемого планировщиком или в процессе регистрации пользователя.

Для создания полной копии реестра Windows XP в командной строке удобно
использовать бесплатную консольную утилиту regsaver.exe
Скачать, 380кб

Сайт программы.

Утилита сохраняет файлы реестра в каталог, указываемый в качестве параметра
командной строки:
regsaver.exe D:\regbackup

После выполнения программы в каталоге D:\regbackup будет создан
подкаталог с уникальным именем, состоящим из года, месяца, числа и
времени создания резервной копии файлов реестра
(“yyyymmddhhmmss”).
После выполнения резервирования программа может выключить компьютер или
перевести его в спящий режим:

regsaver.exe D:\regbackup /off /ask – Выключить компьютер. Ключ
/ask требует подтверждения пользователя на выполнение выключения питания.
regsaver.exe D:\regbackup /standby – Перевести в спящий режим без
подтверждения (нет /ask)
regsaver.exe D:\regbackup /hibernate /ask – Перевести в режим
Hibernate

Вместо стандартного выключения компьютера можно использовать резервное
копирование реестра с выключением по его завершению.

Важным преимуществом консольной версии является то, что
можно создать командный файл и выполнять его с помощью планировщика
заданий для автоматического создания резервных копий файлов реестра.

Я неоднократно использовал regsaver в сценариях регистрации пользователей
при входе в домен для периодического ( например, 1 раз в неделю) копирования
файлов реестра, и наличие резервной копии нередко выручало
в критической ситуации. Для периодического создания резервных копий файлов реестра можно
воспользоваться запуском утилиты от имени администратора с сохранением полномочий.

runas /savecred administrator “regsaver.exe D:\regbackup”
Параметр /savecred используется для запоминания полномочий (credentials) пользователя
с именем administrator при выполнении от его имени задания regsaver.exe D:\regbackup.
При первом запуске runas, будет выдан запрос на ввод
пароля указанного пользователя, который будет запомнен и не будет запрашиваться при
последующих запусках.

Утилита regsaver выполняется без ошибок в среде Windows 7, однако, копии файлов реестра будут не полными, и
использовать их в полной мере невозможно, да и нет необходимости, поскольку автоматическое резервирование файлов реестра
выполняется заданием RegIdleBackup, автоматически выполняемым “Планировщиком заданий” Windows. Копии файлов реестра Windows 7/8
хранятся в каталоге C:\Windows\System32\config\RegBack\. Состояние задачи планировщика, в том числе, запланированное время выполнения
резервного копирования файлов реестра можно посмотреть при выполнении команды

schtasks /query /tn \Microsoft\Windows\Registry\RegIdleBackup

Пример отображаемой информации:


Папка: \Microsoft\Windows\Registry
Имя задачи Время следующего запус Состояние
======================================== ====================== ===============
RegIdleBackup 23.02.2015 0:52:15 Готово 

6. Восстановление реестра, при отсутствии резервных копий в Windows XP.

   
Иметь актуальные резервные копии реестра – это практически, всегда выход из ситуации
когда работа Windows завершается критической ошибкой или, например, при загрузке системы, вы видите сообщение о нарушении целостности куста реестра SYSTEM:

Windows XP could not start because the following file is
missing or corrupt: \WINDOWS\SYSTEM32\CONFIG\SYSTEM

Если есть резервная копия, выполняем за 5-10 минут восстановление файла SYSTEM, как описывалось выше, и система продолжает работать, как ни в чем не бывало. Я, конечно, не рассматриваю здесь случай, когда некондиционность файла реестра вызвана сбоями оборудования компьютера.

Если же, резервирование данных реестра никогда не выполнялось, был отключен механизм
создания контрольных точек восстановления, или вы использовали Win2K, где этого
механизма просто отсутствует, то все равно, некоторые шансы оживить систему, есть.

Возможно, поможет восстановить систему:

  • – использование резервных файлов реестра, автоматически созданных каким-либо
    программным обеспечением. Откройте папку \Windows\system32\config и проверьте, нет
    ли в ней файла system.bak (возможно другое расширение, отличное от .alt
    и .log). Поврежденный файл system переименуйте или сохраните в каком-либо ином месте). Найденный файл- копию system. . . переименуйте в system и попробуйте загрузиться.
  • – в Windows XP возможно использование, сохраненного после начальной установки, файла (файлов) из каталога \WINDOWS\REPAIR. Такой вариант, не самый оптимальный, на крайний случай. После завершения установки Windows, копии файлов реестра сохраняются в упомянутом каталоге и файл system будет соответствовать состоянию ОС сразу после завершения установки.