AVZ 5. Руководство пользователя
×

16.32.13. function RegKeyParamWrite

function RegKeyParamWrite(ARoot, AName, AParam : string; AType, AValue : string; ARedirMode : string = '') : boolean;
 
Записывает значение AValue в параметр AParam типа  AType ключа реестра AName в разделе ARoot. В случае отсутствия ключа или параметра они автоматически создаются. Функция возвращает true, если запись в реестр выполнена успешно и false в случае, если возникла ошибка записи параметров.
Тип передается в виде строки, поддерживаются следующие типы:
· REG_DWORD  
· REG_SZ
· REG_EXPAND_SZ
· REG_BINARY
· REG_MULTI_SZ (поддерживается начиная с AVZ 4.35)
 
В случае использования типа REG_BINARY значение задается аналогично значению в функции RegKeyBinParamWrite. Если указать тип, отличный от перечисленных выше, то запись в реестр не производится и функция возвращает false. Для типа REG_DWORD значение передается в виде строки и задается в десятичном виде (например, '1234') или шестнадцатеричном виде (поддерживается два формата записи: '$0F' и '0x0F', принципиальной разницы между 0x и $ нет).
 
Параметр ARedirMode является необязательным и поддерживается начиная с  версии 5.xx. Он управляет работой редиректора реестра конкретно в обход глобального режима редиректора, см. подробнее в разделе "Редиректор реестра". При отсутствии параметра работа функции не отличается от работы в версии AVZ 4.xx.
 
Пример:
 
begin
   RegKeyParamWrite('HKEY_LOCAL_MACHINE',
                    'SOFTWARE\Microsoft\Windows\CurrentVersion',
                    'Test0',
                    'REG_BINARY',
                    '011,23,5, F2,0E4,1B');
   RegKeyParamWrite('HKEY_LOCAL_MACHINE',
                    'SOFTWARE\Microsoft\Windows\CurrentVersion',
                    'Test1',
                    'REG_SZ',
                    'Test string value');
   RegKeyParamWrite('HKEY_LOCAL_MACHINE',
                    'SOFTWARE\Microsoft\Windows\CurrentVersion',
                    'Test2',
                    'REG_EXPAND_SZ',
                    'Test string value, type REG_EXPAND_SZ');
end.
 
Пример работы с типом REG_MULTI_SZ - обратите внимание на то, что разделителем строк в списке является символ с кодом #0
 
begin
  RegKeyParamWrite('HKLM',
                   'SOFTWARE\Microsoft\Windows NT\CurrentVersion\SvcHost',
                   'test',
                   'REG_MULTI_SZ',
                   'st1'#0'st2');
end.