Введення в реєстр
Цілі числа розміром в 4 байта. Багато параметри служб і драйверів пристроїв мають цей тип і відображаються в двійковому, шістнадцятковому або десятковому форматах.
Рядок даних змінної довжини.
Складний рядок. Цей тип, як правило, мають списки і інші записи в форматі, зручному для читання. Окремі значення розділяються комами, пробілами або іншими символами.
Текстовий рядок фіксованої довжини.
Низка вкладених масивів, розроблена для зберігання списку ресурсів заліза або драйверів.
Зберігання реєстру.
Елементи реєстру зберігаються у вигляді атомарної структури. Реєстр поділяється на складові частини, звані вуликами (hives), або кущами. Вулики зберігаються на диску у вигляді файлів. Деякі вулики, такі, як HKLM \ HARDWARE, не зберігаються в файлах, а створюються при кожному завантаженні, тобто є змінними (vola-tile). При запуску системи реєстру збирається з вуликів в єдину деревоподібну структуру з кореневими розділами. Перерахуємо вулики реєстру і їх місце розташування на диску (для NT старше версії 4.0).
Крім цих файлів, є ряд допоміжних, з наступними розширеннями:
• LOG - журнал транзакцій, в якому реєструються всі зміни реєстру.
• SAV - копії вуликів в тому вигляді, в якому вони були після завершення текстової фази установки. Реєстр є справжньою базою даних, тому в ньому використовується технологія відновлення, схожа як в NTFS. Вже згадані LOG-файли містять журнал транзакцій, який зберігає всі зміни. Завдяки цьому реалізується атомарность реєстру - тобто в даний момент часу в реєстрі можуть бути або старі значення, або нові, навіть після збою. Як бачимо, на відміну від NTFS, тут забезпечується збереження не тільки структури реєстру, а й даних. До того ж, реєстр підтримує такі параметри NTFS, як управління виборчим доступом і аудит подій - система безпеки пронизує всю NT.
ОС Windows XP та програми вміщують інформацію до реєстру ОС, що добре і погано одночасно. Добре - тому що реєстр є загальну пам'ять для ефективного зберігання інформації. Погано - тому що розміри реєстру збільшуються в міру того, як додатки і система зберігають в системі все нову інформацію. У міру цього процесу в реєстрі з'являється величезна кількість сміття. який необхідно і нелегко видалити.
З яких файлів складається реєстр Windows XP?
Отже, повторимо, кущ - це розділ реєстру, що відображається як файл на жорсткому диску. Ім'я використовується для вказівки на ветвящуюся структуру.
Однак не вся інформація з деяких підрозділів кущів зберігається на диску, але про це трохи нижче.
А зараз - ось вони, файли реєстру Windows XP:
(Імені файлу відповідає кущ реєстру Windows XP)
За замовчуванням майже всі файли кущів: Default, SAM, Security, Software і System, - зберігаються в папці% SystemRoot% \ System32 \ Config.
Папка% SystemRoot% \ Profiles містить настройки для кожного користувача комп'ютера.
Якщо є сумніви, то точний список файлів реєстру Windows XP можна подивитися тут: HKLM \ System \ CotnrolSet \ Control \ HiveList \.
При початковому завантаженні до цього розділу звертається Configuration Manager, щоб проинициализировать всі основні розділи реєстру.
Відповідний розділ реєстру Windows XP
Знання реєстру Windows XP буде неповним без уміння написати reg-файл.
REG-файл - це файл, який має певну структуру і містить інформацію, яка імпортується в реєстр.
Перший рядок reg-файлу для Windows XP обов'язково повинна бути такою:
Windows Registry Editor Version 5.00
проте REGEDIT від Windows XP розуміє і таке:
REGEDIT4
зберігаючи тим самим сумісність від низу до верху. Зверніть увагу на регістр букв. Крім цього, в першому рядку нічого бути не повинно. Після тексту обов'язково повинна бути порожній рядок.
Потім вказується розділ реєстру, в якому треба прописати або змінити якісь параметри. Назва розділу має бути укладена в квадратні дужки. Потім нижче прописуються параметри і значення по одному параметру в рядку. Коли ви закінчили опис параметрів і їх значень, то залиште порожній рядок і або закінчите файл, або, якщо потрібно, починайте опис для наступного розділу.
Ось приклад reg- файлу.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE \ SYSTEM \ Setup]
"SetupType" = dword: 0
"SystemSetupInProgress" = dword: 0
"CmdLine" = ""
"SystemPrefix" = hex: cc, 1b, 00,00,00,40,3d, 68
"SystemPartition" = "\ \ Device \ \ HarddiskVo-lume1"
"OsLoaderPath" = "\ \" uniqueid "=" C: \ \ WINDOWS \ \ LPM "
[HKEY_LOCAL_MACHINE \ SYSTEM \ Setup \ AllowStart]
Останній рядок у файлі зробіть порожній.
Як бачимо, строкові параметри полягають в лапки. Перед числами ставляться покажчики на їх тип. Наприклад, dword - вказує на тип цього параметра, букви повинні бути обов'язково маленькі. Після двокрапки слідує значення з восьми цифр в шістнадцятковому форматі. Однак більшість параметрів dword мають значення або 0, або 1. Прогалини в рядку не допускаються.
У реєстрі існують параметри "За замовчуванням" (Default). Щоб привласнити їм якесь значення через REG-файл, треба додати такий рядок:
@ = "Будь-яке значення"
Regedit має деякий безліч опцій командного рядка, щоб автоматизувати його використання в пакетних файлах. Нижче вказані деякі з варіантів.
regedit.exe [options] [filename]
filename - імпортований в реестр.reg файл
/ S - придушувати запит на підтвердження при імпорті файлу
/ E - експорт розділу реєстру в файл.
приклад:
regedit / e file.reg HKEY_CURRENT_USER \ Software \ Microsoft
Досить убого, чи не так? Але не все так погано. Наберіть в командному рядку:
REG /?
і вивчайте "Програму редагування системного реєстру з командного рядка, версія 3.0". Я думаю, вона вам сподобається.
Видалення розділів і ключів реєстру за допомогою .reg-файлу
Ви можете видаляти розділи реєстру і значення в розділах, не використовуючи REGEDIT. Для видалення розділу використовуйте той же самий формат reg-файлу, тільки перед найменуванням розділу поставте знак "мінус" ( "-"). наприклад:
REGEDIT5
[-HKEY_LOCAL_MACHINE \ SYSTEM \ Test]
Цей же формат використовуйте для видалення окремих параметрів в обраних розділах, поставивши знак "мінус" ( "-") після знака "дорівнює" ( "="):
REGEDIT5
[HKEY_LOCAL_MACHINE \ SYSTEM \ Test]
"TestValue" = -
Пам'ятайте, що перш, ніж проводити будь-які маніпуляції з реєстром вручну, рекомендується зробити резервну копію.