
11.05.2011, 00:55
|
Прохожий
|
|
Регистрация: 20.04.2011
Адрес: Киров
Сообщения: 35
Версия Delphi: 7 Enterprise
Репутация: 148
|
|
Если пишешь бинарное значение, лучше без string обойтись.
Саму процедуру можно сделать такой:
Код:
function RegWriteBinary(RootKey: HKEY; Key, Name:string; const Value; Size: Integer): Boolean;
var
Handle: HKEY;
Res: LongInt;
begin
Result := False;
Res := RegCreateKeyEx(RootKey, PChar(Key), 0, nil, REG_OPTION_NON_VOLATILE,
KEY_ALL_ACCESS, nil, Handle, nil);
if Res <> ERROR_SUCCESS then
Exit;
Res :=RegSetValueEx(Handle, PChar(Name), 0, REG_BINARY, @Value, Size);
Result := Res = ERROR_SUCCESS;
RegCloseKey(Handle);
end;
А вызывать ее например так:
Код:
const
DataSize = 7;
Data: array[1..DataSize] of Byte= (00, 00, 32, 45, 00, 00, 32);
begin
RegWriteBinary(HKEY_CURRENT_USER, 'Test', 'foo', Data, DataSize);
end;
|