Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.21;
Скачать: CL | DM;

Вниз

Работа с реестром   Найти похожие ветки 

 
likeanangel   (2003-05-19 19:10) [0]

Уважаемые Мастера!

Сбросьте пожалуйста какой-нибудь образец реально работающего кода с вызовами RegSaveKey/RegLoadKey - у меня почему-то не получается ;((

Максим


 
VMcL ©   (2003-05-19 19:24) [1]

См. модуль Registry, класс TRegistry


 
Coban ©   (2003-05-20 00:36) [2]

const
Key = "SOFTWARE\TestCompany\TestProgram"; //базовый путь в реестре

function OpenKey(SubKey: String; var Handle: HKEY): Boolean;
begin
Result := RegCreateKey(HKEY_CURRENT_USER, PChar(Key + SubKey), Handle) = ERROR_SUCCESS;
end;

function CloseKey(var Handle: HKey): Boolean;
begin
Result := RegCloseKey(Handle) = ERROR_SUCCESS;
end;

function WriteOption(const Option: String; Value: Integer): Boolean;
var
Handle: HKey;
begin
Result := False;
if not OpenKey("", Handle) then Exit;
Result := (RegSetValueEx(Handle, PChar(Option), 0, REG_DWORD, @Value, SizeOf(Value)) = ERROR_SUCCESS);
CloseKey(Handle);
end;

function ReadOption(const Option: String; var Res: Integer): Boolean;
var
IntBuffer: Integer;
DataType, BufSize: Integer;
Handle: HKey;
begin
Result := False;
if not OpenKey("", Handle) then Exit;
IntBuffer := 0;
BufSize := SizeOf(IntBuffer);
Result := (RegQueryValueEx(Handle, PChar(Option), nil, @DataType, @IntBuffer, @BufSize) = ERROR_SUCCESS);
CloseKey(Handle);
Res := IntBuffer;
end;


потом где-нить:
<.....>
var
b: Integer;
begin
WriteOption("SuperVar", 123); //сохранить в ключ SuperVar
<....>
if ReadOption("SuperVar", b) then begin
<...>
end else
<ключа не существует>
end;



Страницы: 1 вся ветка

Текущий архив: 2003.07.21;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
3-67693
Ximik
2003-06-22 02:45
2003.07.21
Удаляются связанные записи!


14-68068
Кен
2003-06-28 04:00
2003.07.21
Как замерять время выполнения отдельных частей программы ?


14-68003
IDDQD
2003-07-03 15:55
2003.07.21
DBComboBox


3-67715
glow
2003-06-24 10:57
2003.07.21
DBGrid


14-68063
Nik8.
2003-07-06 00:27
2003.07.21
Вопрос 2