Работа с реестром в Delphi 2

Реестр очень нужная вещь! Им должен уметь пользоваться каждый. Сегодня я покажу маленький пример как сохранить некоторые параметры Вашей программы.

Первое что надо сделать это добавить в uses модуль Registry
Затем написать две процедуры:


type  
TForm1 = class(TForm)  
procedure SaveProgParam;  
procedure LoadProgParam;  
  
procedure TForm1.SaveProgParam;  
var  
FIniFile: TRegIniFile;  
Begin  
// по умолчанию всё делается в HKEY_CURRENT_USER  
FIniFile := TRegIniFile.Create(’Software’);  
FIniFile.OpenKey(’Папка_вашей_программы’,true);  
if Form1.WindowState=wsNormal then  
begin  
FIniFile.WriteInteger(’Option’, ‘Width’, Width);  
// Write… - означает запись, …Integer – означает тип записываемой переменной  
// Первый параметр ‘Option’ – это подраздел: ‘Папка_вашей_программыOption’  
// Второй параметр ‘Width’ – название ключа (файла в реестре)  
// Третий – это переменная которую мы записываем  
FIniFile.WriteInteger(’Option’, ‘Heigth’, Height);  
FIniFile.WriteInteger(’Option’, ‘Left’, Left);  
FIniFile.WriteInteger(’Option’, ‘Top’, Top);  
end;  
FIniFile.WriteInteger(’Option’, ‘WinState’, Integer(WindowState));  
FIniFile.Free; //освобождаем переменную  
end;  

Здесь мы записали положение окна и развёрнуто ли оно. Далее мы пишем процедуру загрузки этих параметров:


procedure TForm1.LoadProgParam;  
var  
FIniFile: TRegIniFile;  
Begin  
// по умолчанию всё делается в HKEY_CURRENT_USER  
FIniFile := TRegIniFile.Create(’Software’);  
FIniFile.OpenKey(’Папка_вашей_программы’,true);  
Width:=FIniFile.ReadInteger(’Option’, ‘Width’, 600);  
// Read… - означает чтение, …Integer – означает тип считываемой переменной  
// Первый параметр ‘Option’ – это подраздел: ‘Папка_вашей_программыOption’  
// Второй параметр ‘Width’ – название ключа (файла в реестре)  
// Третий параметр 600 – это значение по умолчанию, если ключ с названием ‘Width’ не будет найден  
Height:=FIniFile.ReadInteger(’Option’, ‘Heigth’, 300);  
Left:=FIniFile.ReadInteger(’Option’, ‘Left’, 10);  
Top:=FIniFile.ReadInteger(’Option’, ‘Top’, 10);  
WindowState:=TWindowState(FIniFile.ReadInteger(’Option’, ‘WinState’, 0));  
FIniFile.Free; //освобождаем переменную  
end;  

И теперь внедряем эти процедуры в программу:


procedure TForm1.FormCreate(Sender: TObject);  
begin  
LoadProgParam;  
end;  
  
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);  
begin  
SaveProgParam;  
end;   
Теги:
Работа с реестром
Добавлено: 26 Июля 2018 20:54:27 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...