C# для профессионалов. Том II
Шрифт:
□ HKEY_LOCAL_MACHINE (HKLM) является огромным ульем, который содержит данные обо всем программном обеспечении и оборудовании, установленном на машине. Он также содержит улей HKCR: HKCR в действительности не является независимым ульем со своими собственными правами, а является просто удобным отображением на ключ реестра
□ HKEY_USERS (HKUSR) содержит данные о пользовательских предпочтениях всех пользователей. Как можно догадаться, он содержит также улей HKCU, который является отображением на один из ключей в HKEY_USERS).
□ HKEY_CURRENT_CONFIG (HKCF) содержит данные об оборудовании компьютера.
Оставшиеся два ключа содержат информацию, которая имеет временный характер и которая часто изменяется:
□ HKEY_DYN_DATA
□ HKEY_PERFORMANCE_DATA содержит данные, связанные с производительностью выполняющихся приложений.
Внутри ульев находится древовидная структура ключей реестра. Каждый ключ является во многом аналогом папки или файла в файловой системе. Однако существует одно очень важное различие: файловая система различает файлы (которые предназначены для хранения данных) и папки (которые предназначены прежде всего для хранения других файлов или папок), но в реестре существуют только ключи. Ключ может содержать как данные, так и другие ключи.
Если ключ содержит данные, то они будут представлены как последовательность значений (можно привести доводы, что эти значения и есть грубые эквиваленты файлов в файловой системе). Каждое значение будет иметь имя, тип данных и значение. Кроме того, ключ может иметь значение по умолчанию, не имеющее имени.
Эту структуру можно увидеть, используя
Ключ HKCU/Control Panel/Appearance имеет три заданных именованных значения, хотя значение по умолчанию не содержит никаких данных. Столбец на экране, помеченный Type, указывает тип данных каждого значения. Записи в реестре можно форматировать как один из трех типов данных. Этими типами являются REG_SZ (что грубо соответствует экземпляру строки .NET — соответствие неточное, так как типы данных реестра не являются типами данных .NET), REG_DWORD (грубо соответствует
Приложение, которое хочет сохранить данные в реестре, будет делать это создавая ряд ключей реестра, обычно с ключом HKLM/Software/<ИмяКомпании>. Отметим, что эти ключи не обязательно должны содержать какие-либо данные. Иногда сам факт существования ключа предоставляет достаточно информации для приложения.
Классы реестра в .NET
Доступ к реестру осуществляется с помощью двух классов в пространстве имен
Поэтому, например, чтобы получить экземпляр
Процесс получения ссылки на объект
Можно было бы ожидать, что методы объекта
Наиболее очевидное различие состоит в том, как открывают ключ реестра в заданном месте в реестре. Класс
Доступ к ключу реестра, полученный таким образом, будет предоставлен только для чтения. Если вы хотите иметь возможность записи в ключ (что предполагает запись в его значения либо создание или удаление его прямых потомков), необходимо использовать другую перегруженную версию
В связи с этим, так как этот ключ содержит информацию, используемую приложениями Microsoft, в большинстве случаев нежелательно модифицировать этот конкретный ключ.
Метод
Способ работы
Месть бывшему. Замуж за босса
3. Власть. Страсть. Любовь
Любовные романы:
современные любовные романы
рейтинг книги
Кодекс Крови. Книга IV
4. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Солнечный корт
4. Все ради игры
Фантастика:
зарубежная фантастика
рейтинг книги
Темный Лекарь 4
4. Темный Лекарь
Фантастика:
фэнтези
аниме
рейтинг книги
Таня Гроттер и Исчезающий Этаж
2. Таня Гроттер
Фантастика:
фэнтези
рейтинг книги
Прометей: каменный век II
2. Прометей
Фантастика:
альтернативная история
рейтинг книги
Камень. Книга восьмая
8. Камень
Фантастика:
фэнтези
боевая фантастика
рейтинг книги
Кодекс Крови. Книга ХVI
16. РОС: Кодекс Крови
Фантастика:
попаданцы
аниме
фэнтези
рейтинг книги
Кодекс Охотника. Книга XV
15. Кодекс Охотника
Фантастика:
попаданцы
аниме
рейтинг книги
Последняя Арена 11
11. Последняя Арена
Фантастика:
фэнтези
боевая фантастика
рпг
рейтинг книги
Хорошая девочка
Любовные романы:
современные любовные романы
эро литература
рейтинг книги
Диверсант. Дилогия
Фантастика:
альтернативная история
рейтинг книги
