В написании этой статьи мне очень помогла крайне полезная книга: Г. Борн "Реестр Windows 98: Пер. с англ." - СПб.: BHV - Санкт-Петербург, 2000. Настоятельно рекомендую ее почитать :).
А пойдет речь в этой статье о настройках различных установок Рабочего стола и оболочки Winsows. Часть этих настроек можно изменить из различных диалогов (например, "Свойства: Экран"), но, "это не наши методы" :), ручками изменять все гораздо интереснее, да и, в любом случае, знать, где хранятся эти настройки, будет не лишним.
И начнем, пожалуй, с размеров элементов экрана в Windows (иконки, шрифты, рамки, меню, полосы прокрутки). Соответствующие параметры хранятся в разделе HKEY_CURRENT_USER\Control Panel\desktop\WindowMetrics реестра. В таблице приведены некоторые параметры, содержащиеся в этом разделе.
Имя параметра | Описание | ||
BorderWidth | Ширина рамки окна | ||
CaptionFont | Шрифт заголовка | ||
CaptionHeight | Высота шрифта заголовка | ||
CaptionWidth | Ширина заголовка | ||
IconFont | Шрифт названия иконки | ||
IconSpacing | Горизонтальный интервал между иконками | ||
IconSpacingFactor | Фактор, используемый для вычисления положения иконок | ||
IconVerticalSpacing | Вертикальный интервал между значками | ||
MenuFont | Параметры шрифта (гарнитура, имя шрифта, и т.д.), используемого в строках меню | ||
MenuHeight | Высота ячейки символа, используемого в строке меню | ||
MenuWidth | Ширина ячейки символа, используемого в строке меню | ||
MessageFont | Шрифт, используемый в сообщениях | ||
ScrollHeight | Высота горизонтальной полосы прокрутки | ||
ScrollWidth | Ширина вертикальной полосы прокрутки | ||
ShellIconBPP | Число цветов (битов на точку), используемых для иконок | ||
ShellIconSize | Размер иконок на Рабочем столе (и в проводнике в режиме "Крупные значки") | ||
SmCaptionFont | Шрифт в маленьких заголовках | ||
SmCaptionHeight | Высота ячейки символа в маленьком заголовке | ||
SmCaptionWidth | Ширина ячейки символа в маленьком заголовке | ||
StatusFont | Шрифт, используемый в панели состояния окна |
Каждый ключ, содержащий данные для шрифта, состоит из последовательности байтов, соответствующих имени шрифта и нескольким флагам, определяющим тип шрифта, типы начертания (полужирный, курсив) и т.д.