Преобразование REG-файла в код скрипта инсталлятора NSIS
Понадобилось тут добавить ключи из REG-файла в код своего инсталлятора на NSIS. Оказывается, все придумано до нас. Имеется утилита Reg2Nsis, которая этим и занимается.
reg2nsis REG-файл [ПАРАМЕТРЫ]или
reg2nsis ключ_реестра [ПАРАМЕТРЫ]Т.е. утилита может преобразовать в код NSIS, как содержимое REG-файла, так и данные непосредственно из реестра.
Параметры:
-r - обработать ключ реестра со всеми подключами, начиная с указанного. Срабатывает только если в качестве источника указан путь в реестре.-o <файл> - код будет сохранен в указанный файлЕсли вместо
-o <файл> указать ключ -O, то код будет сохранен в файл с именем, аналогичным указанному REG-файлу, но с расширением .nsh Без дополнительных параметров, код NSIS будет выведен на консоль (
stdout)Программа смотрит в настройки системы и автоматически преобразует стандартные системные пути в стандартные переменные NSIS. Например, встретившийся путь
C:\Windows\ будет преобразован в $WINDIR\. Это можно отключить, добавив в командной строке ключ
-s.При анализе REG-файла, программа распознает как добавление ключа/значения, что понятно, так и команду на его удаление.
Т.е. запись в REG-файле:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro lSet\services\oem-drv64]будет преобразована в:
WriteRegStr HKEY_LOCAL_MACHINE "SYSTEM\CurrentControlSet\services\oem-d rv64" "" ""А запись:
[-HKEY_LOCAL_MACHINE\SYSTEM\CurrentContr olSet\services\oem-drv64]преобразуется в следующий код:
DeleteRegKey HKEY_LOCAL_MACHINE "SYSTEM\CurrentControlSet\services\oem-d rv64"С официальной NSIS-wiki
Копия на mega.nz
Это репост с сайта http://tolik-punkoff.com
Оригинал: http://tolik-punkoff.com/2020/11/04/preo