- •1.1. Порядок выполнения задания
- •1.2. Варианты заданий
- •2.1. Порядок выполнения задания
- •2.2. Варианты заданий
- •3.1. Порядок выполнения задания
- •3.2. Варианты заданий
- •4.1. Порядок выполнения задания
- •4.2. Варианты заданий
- •5.1. Порядок выполнения задания
- •5.2. Варианты заданий
- •6.1. Порядок выполнения задания
- •6.2. Варианты заданий
- •7.1. Порядок выполнения задания
- •7.2. Варианты заданий
- •8.1. Порядок выполнения задания
- •8.2. Варианты заданий
- •9.1. Порядок выполнения задания
- •9.2. Варианты заданий
- •10.1. Порядок выполнения задания
- •10.2. Варианты заданий
- •11.1. Порядок выполнения задания
- •11.2. Варианты заданий
- •12.1. Порядок выполнения задания
- •12.1.1. Общие понятия о реестре Windows.
- •12.1.2. Работа с реестром Windows в Delphi*.
- •12.2. Варианты заданий
12.1. Порядок выполнения задания
Создать новый проект, содержащий пустую форму. Разместить на форме компонент, заданный по варианту. Выбрать из свойств этого компонента десять таких, которые в большей степени влияют на визуальные свойства объекта (например, цвет, длина, ширина, шрифт и т.п.). Создать десять управляющих элементов, с помощью которых можно изменять выбранные десять свойств.
Создать две кнопки. По нажатию на первую кнопку в реестр должна записываться информация о текущих значениях свойств компонента, заданного по варианту. Запись информации в реестр необходимо производить в ветку HKEY_LOCAL_MACHINE\SOFTWARE\ФАМИЛИЯ_СТУДЕНТА. В разделе SOFTWARE находится информация обо всех программах, установленных на данном компьютере. При нажатии на вторую кнопку записанные в реестр данные должны удаляться.
При запуске проекта необходимо загружать из реестра текущие настройки заданного по варианту компонента. При этом если проект был запущен в первый раз (т.е. записей в реестре еще нет) - необходимо вывести предупреждающее сообщение о том, что информацию не удалось прочитать из реестра.
12.1.1. Общие понятия о реестре Windows.
Реестр - это системная база данных. Получить доступ к ней можно, написав в командной строке ("ПУСК > "Выполнить") слово "RegEdit" - при этом запуститься программа для редактирования реестра. Окно этой программы разделено на две части. В левой (более узкой панели) показана древовидная структура ключей. Ключ - это раздел, отвечающий за какие-либо установки. Сами установки называются параметрами, находящимися в правой панели. Каждый параметр имеет своё имя, значение и тип. Параметры бывают строкового типа, двоичного и типа DWORD. Их очень много, но их назначение зависит от того, в каком ключе находится той или иной параметр. Ключи делятся между шестью основными разделами:
HKEY_CLASSES_ROOT - Содержит информацию об OLE, операциях перетаскивания (drag-and-drop) и ярлыках. В данном разделе можно так же указать программы, запускаемые при активизации файлов определённого типа.
HKEY_CURRENT_USER - Содержит индивидуальные установки для каждого пользователя, зарегистрированного в системе.
HKEY_LOCAL_MACHINE - Содержит аппаратные и программные установки, необходимые для функционирования оборудования и программ. Данный раздел так же хранит конфигурацию Windows.
HKEY_USERS - Содержит установки пользователей и соответствующие конфигурационные данные, такие как цвет окна, расположение элементов на рабочем столе, обои, заставки.
HKEY_CURRENT_CONFIG - Содержит информацию о текущем аппаратном профиле. Если вы не используете аппаратные профили, данный раздел содержит установки Windows по умолчанию.
HKEY_DYN_DATA - В отличие от других разделов, которые хранят статистические данные (неизменяющиеся во время сеанса), данный раздел содержит указатели на динамические данные (постоянно изменяющиеся во время работы компьютера). Windows использует данный раздел для отслеживания профилей оборудования plug-and-play, статистики по производительности и драйверов виртуальных устройств VxD.
12.1.2. Работа с реестром Windows в Delphi*.
Для того чтобы работать с реестром Windows, в Delphi существует специальный класс - TREGISTRY. Этот класс имеет все основные методы, при помощи которых можно писать/читать информацию в реестре. Поскольку этот класс не создается в Delphi автоматически (как, например, классы для каждой формы), его необходимо создавать и удалять вручную. Создать класс лучше всего один раз - при запуске проекта (можно использовать обработчик формы OnCreate). Для создания класса используется конструктор Create:
var Reg: TRegistry; begin Reg := TRegistry.Create;
....
Соответственно, удалить класс лучше всего при закрытии проекта (можно использовать обработчик формы OnClose). Для удаления класса используется процедура Free:
Reg.Free;
Описание класса находится в модуле Registry, поэтому следует включить этот модуль в состав директивы Uses:
Uses Registry;
После создания класса становятся доступными и все его методы. Рассмотрим основные из них:
Reg.RootKey. Этот метод позволяет установить текущий раздел следующим образом:
Reg.RootKey:= hkey_local_machine;
Здесь hkey_local_machine - предописанная константа, которая указывает название текущего раздела. Существуют одноименные константы для всех разделов реестра Windows.
Reg.OpenKey, reg.CreateKey, reg.DeleteKey - создают, открывают или удаляют ключ в текущем разделе реестра. Возвращают значение Boolean, характеризующее результат выполнения операции. Пример использования:
Reg.OpenKey('software\MyRegistryExample',true);
Reg.ReadBool, reg.ReadDate, reg.ReadDateTime, reg.ReadFloat, reg.ReadInteger, reg.ReadString, Reg.WriteBool, reg.WriteDate, reg. WriteDateTime, reg.WriteFloat, reg.WriteInteger, reg.WriteString - позволяют читать или записывать в реестр данные различных типов. Пример использования:
Reg.WriteString('MyRegistryName','MyRegistry Value');
Здесь MyRegistryName - название параметра, MyRegistry Value - его значение.
Reg.CloseKey - используются для закрытия ключей из реестра. В частности, ключ закрывается при окончании работы с ним. Если ключ не будет закрыт, то, например, удалить его не получится.