Показать полную графическую версию : *Delphi* | Помогите в работе с реестром
Подскажите как BD 6 создавать в реестре параметры: Двоичный, Строковый, DWord, Мультистроковый, Расширяемый строковый и как происвоить к ним определенные значения.
Denhell
Стандартная WinAPI
LONG RegSetValueEx(
HKEY hKey,
LPCTSTR lpValueName,
DWORD Reserved,
DWORD dwType,
const BYTE* lpData,
DWORD cbData
);
hKey - Указатель на открытый ключь реестра
HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_PERFORMANCE_DATA
HKEY_USERS
lpValueName - Значение
Reserved - NULL
dwType - Тип сздаваемого значения
lpData - Имя ключа
cbData - размер lpData
Вроде так если мне память неизменяет
Denhell
Для работы с реестром я объявляю переменную типа TRegistry ( обязательно в разделе Uses подключить модуль Registry), для создания ключей - функцию TRegistry.CreateKey (Const Key: String): Boolean, для создания параметров - TRegistry.WriteString (Const Name: String, Const Value: String), TRegistry.WriteBool (Const Name: String, Const Value: Boolean) и т.д.
Пример кода:
procedure TForm1.FormCreate(Sender: TObject);
var
RegFile: TRegistry;
begin
RegFile:= TRegistry.Create;
RegFile.RootKey:= HKEY_LOCAL_MACHINE;
//
try
RegFile.CreateKey('\SOFTWARE\TLTray');
RegFile.CreateKey('\SOFTWARE\TLTray\User');
RegFile.CreateKey('\SOFTWARE\TLTray\AutoRunFiles');
.................
RegFile.CloseKey;
//
if RegFile.OpenKey('\SOFTWARE\TLTray\User', False) then
begin
RegFile.WriteString('FName', '');
.................
RegFile.WriteInteger('flRun', 0);
RegFile.WriteDate('flDate', Now);
RegFile.CloseKey;
end;
//
if RegFile.OpenKey('\SOFTWARE\TLTray\AutoRunFiles', False) then
begin
...............
RegFile.WriteBool('AutoRun', False);
RegFile.CloseKey
end;
//
finally
RegFile.Free;
end;
end;
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC