Шаг 1 - Историческая справка по реестру. INI-файлы.

Реестр – важная часть любой Windows. Это централизованная база данных, которая хранит все параметры настройки системы и работающих в ней приложений. Настройки железа (в том числи и PnP ), системную информацию OLE, сети, и много чего еще.

В начале разберемся, как пришли к концепции реестра. Еще в Windows 3.1 применялось два вида конфигурации:

Системные ini -файлы (большинство из них потом перекочевало в Windows 98).
Необходимые для запуска Windows ini -файлы:
1. Win.ini – содержалась основная информация о программной конфигурации Windows , а так же некоторые параметры, добавленные прикладными программами.
Примечание: если кто-то еще программирует под Windows 3.1, учтите, что это ini файл имеет ограничение на загружаемый объем 64 Кбайта. Все записи не входящие в этот объем игнорируются, а Windows об этом не сообщает (:-)).
2. Sistem.ini – основное хранилище системной информации по всему железу установленном на компьютере. А так же по драйверам устройств, загружаемым оболочкам и т.п.
Необязательные:
3. Program.ini, Winfile.ini содержали параметры инициализации Windows Program и File Manager. Без них менеджеры запускались только в стандартной конфигурации.
4. Protocol.ini - хранил инициализационную информацию для сетей Windows.

Прикладные ini -файлы, которые добавляли приложения установленные в системе.

Прародитель нынешнего реестра Windows файл Reg.dat, имевший двоичный формат, в отличие от ini -файлов, которые были обычными текстовыми файлами, и представлявший собой иерархическую базу данных. Там хранилась информация, необходимая для поддержки OLE, а так же сопоставления приложений расширениям имен файлов. Он состоял из одной структуры-контейнера с именем HKEY_CLASSES_ROOT.

Но ini -файлы имели определенные недостатки:
1. Отсутствовали четкие правила хранения ini -файлов.
2. Не обеспечивали поддержку многопользовательской среды.
3. Не поддерживали множественные аппаратные конфигурации, следовательно, ни а каком PnP речи не было.

И придумали реестр.

Hosted by uCoz