Что нового

[Реестр] Цикл замены в реестре

mexx

Новичок
Сообщения
2
Репутация
0
Здравствуйте!

Только начал изучать возможности Autoit и возник следующий вопрос: "Как найти все значения ключей реестра например "C:\111" и заменить их на "C:\222""? Что-то уже всю голову сломал.....


Спасибо :wacko:
 
Автор
M

mexx

Новичок
Сообщения
2
Репутация
0
что-то не могу сообразить как его поправить ((( i need help!!! :wacko:
 

AZJIO

Меценат
Меценат
Сообщения
2 752
Репутация
1 149
mexx
Читай справку по функциям, записывай свои комментарии в скрипт.
 

agikon

Знающий
Сообщения
789
Репутация
16
да , тема очень интересная.

вот мне интересно как указать исходную ветку реестра в какой искать, например в HKEY_LOCAL_MACHINE ?

так?
Код:
RegEnumKey("HKEY_LOCAL_MACHINE")


Код:
Func RegReplace($sKey)
;$sKey - исходная ветка
    Local $i, $sTemp, $sValuename, $sValue, $sValuetype
    $i = 0
    While 1
        $i += 1
        $sValuename = RegEnumVal($sKey, $i)
        If @error Then ExitLoop
        $sValue = RegRead($sKey, $sValuename)
        $sValuetype = @extended
;здесь идет модификация реестра
        Switch $sValuetype
            Case 1, 2, 7
            Case 4
            Case 3
            Case Else
        EndSwitch
    WEnd
;рекурсия
    $i = 0
    While 1
        $i += 1
        $sTemp = RegEnumKey($sKey, $i)
        If @error Then ExitLoop
        RegReplace($sKey & '\' & $sTemp)
    WEnd
    Return
EndFunc
 
Верх