Создание интерфейса для настроек реестра

Весь смысл залезания в реестр заключается в том, чтобы увидеть и изменить настройки, которые недоступны из Проводника, Панели управления или сотни других диалоговых окон, разбросанных по всей операционной системе. Кроме того, это еще и способ исправления интерфейса и добавления настроек.
Зачем вам это делать? Возможно, из-за настроек реестра, которые вы часто меняете, или, возможно, вы администрируете здание, полное компьютеров и вам хотелось бы показать какое-то свойство пользователям остальных компьютеров, но вы не хотите, чтобы они сами как-то вмешивались в работу реестра. Зайдите в Панель управления Параметры папок Вид. С первого взгляда может показаться, что список дополнительных параметров представлен в неудобном формате, очевидно, что можно было бы разместить большее количество параметров. Однако это далекое от идеала представление способно подстраиваться под требования заказчика, разрешая Microsoft легко добавлять или удалять элементы.
Вы, наверное, предположили, что Microsoft не сделала список параметров настраиваемым только для того, чтобы вы не смогли вмешаться в работу Windows. Этот список сделан так, чтобы его можно было приспособить к разнообразным настройкам версий Windows. Но это не значит, что вы не можете его изменять.
Вы можете присоединить флажок или переключатель к любому параметру в реестре. Это позволяет делать изменения в реестре, без необходимости вмешиваться в его работу. А если вы являетесь разработчиком программного обеспечения, то можете добавить в это окно параметры собственной программы. Или получить простой доступ к спрятанным настройкам Windows, которые часто меняете. Формат записи довольно хорошо продуман, так что вам не нужно быть программистом, чтобы его использовать. Вы можете добавить параметры в определенный раздел реестра, а затем привязать их к значениям из реестра. Вот как следует это делать:
1. Откройте редактор реестра.
2. Перейдите к HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\ Explorer\Advanced\Folder.
Посмотрите на разделы внутри раздела Folder. Иерархическая структура воспроизведена в реестре, хотя элементы списка могут появляться в порядке, отличном от их представления в реестре. Так получается из-за того, что названия в списке параметров папок не обязательно должны совпадать с названиями соответствующих разделов реестра, хотя в обоих случаях названия будут расположены в алфавитном порядке.
3. Воспользуйтесь возможностью выполнить резервное копирование всей ветви, выделив раздел Folder. Таким образом, можно будет проще восстановить значения по умолчанию без переустановки Windows.
4. На этом шаге вы можете убрать любые ненужные элементы, удалив соответствующие разделы из этой ветви. Значения параметра Text должно быть достаточно, чтобы пояснить, для чего он нужен.
5. Для добавления нового элемента необходимо создать новый раздел внутри раздела Folder. Назовите его любым осмысленным именем, не совпадающим с существующими именами разделов.
Некоторые настройки разделены на группы, например Скрытые файлы и папки, содержащие переключатель. Группа - это раздел в реестре, такой как раздел Hidden, который может содержать два или более подраздела. В групповом разделе необходимо задать заголовок и изображение значка, а затем указать в параметре Туре значение group. Поместите все необходимые элементы в этот подраздел. Если вы запутались, то используйте раздел Hidden в качестве образца.
6. Значения внутри каждого раздела определяют свойства соответствующей настройки.
Начните с добавления нового строкового значения для параметра Text, дважды щелкните на нем мышкой, чтобы ввести заголовок нового элемента. Теперь добавьте еще одно строковое значение с именем Туре и введите либо group, либо checkbox, либо radio. Эти значения определяют внешний вид новой настройки.
Тип параметров CheckedValue, UnCheckedValue и DefaultValue зависит от целевого параметра. Например, если целевое параметр имеет тип DWORD, тогда все эти параметры должны быть DWORD.
Если пометка «галочкой» пользовательского элемента Tree должна изменить данные с нуля на единицу в ветви HKEY_CURRENT_USER\Software\Annoyances, тогда HKeyRoot необходимо присвоить значение 80609061, RegPath -\Software\ Annoyances, ValueNarae - Tree, CheckedValue - 1, a UnCheckedValue - 0. 8. Если окно Параметры папок открыто, то его придется закрыть и открыть заново, чтобы изменения стали видны.
Если вы добавили настройку, а она не отображается в окне Параметры папок, то вполне вероятно, что одно или несколько необходимых значений отсутствуют.
9. Закройте редактор реестра.
В следующий раз, когда вы будете открывать диалоговое окно Параметры папок, текущая информация будет сравниваться с CheckedValue и UnCheckedValue и список Дополнительных параметров будет настроен в соответствии с вашими пожеланиями. Другими словами, если вы все сделали правильно, каждый параметр в Дополнительных параметрах должен правильно отражать свое текущее состояние. Измените настройки, нажмете ОК, и соответствующие параметры будут прописаны в реестре.
Для воспроизведения настройки в любом другом месте в интерфейсе Windows или в интерфейсе другого приложения необходимо найти соответствующий раздел реестра.