![]() |
Работа с реестром
Как возможно с помощью Autolt сохранить целую ветку реестра и по возможности её востановить ?
|
Код:
ShellExecute("reg","save HKLM\software a:\backup.dat", @SystemDir, "", "@SW_HIDE") |
Та да, какието ошибки вылазят...
|
Цитата:
Кстати, немного по теме. Есть расширенная библиотека для работы с реестром. |
Цитата:
и может там ещё с правами доступа проблеммы. ----------------------------------------------------------------------------------------------------------------------------------------------------------- Ну не овтопега ради, напишу здесь, ибо не знаю как назвать! Нужно: Код:
$VST = RegRead("HKLM\Software\VST","VSTPluginPath","REG_SZ") (всмысле = 0 это типа если не существует такого реестра value или key итп) ------- кстати, еслиб это был InnoSetup я бы здесь применил Flags: createvalueifdoesntexist и создал бы value, ! хотя в любом случае, мне потом это как $переменная нужна чтоб как $Path подставить в GUI, Кстати, аналог createvalueifdoesntexist тоже подскажите если это в автоит не сложно... |
Цитата:
Цитата:
|
Цитата:
Код:
If $VST = 0 Then Creat0R, я бы поизучал логический код, но там всегда примеры офтопичные, не под мои задачи... мнеб только файлы и реестр "патчить" и более ничего не надо, :) правда условия иногда как тут возникают. createvalueifdoesntexist - буквально создаёт value в том случае если его ещё нет, в противном случае игнорируется... в автоит тут наверное целый блок с операторами надо наворотить, чего я очень боюсь :) |
Цитата:
Цитата:
Цитата:
Если переменную (как я догадываюсь), тогда так: Код:
$Var = _RegReadEx("HKEY_LOCAL_MACHINE\UnexistingKey", "ValueName", "Some Default Value") |
аааа! я зделал! ВЫ правы я лентяй! как всё просто на самом деле!
Код:
$VST = RegRead("HKLM\Software\VST","VSTPluginsPath") Цитата:
Root: HKLM32; Subkey: "Software\VST"; ValueType: string; ValueName: "VSTPluginsPath"; ValueData: "{sys}\Plugins"; Flags: createvalueifdoesntexist noerror; Permissions: admins-full очень удобные кстати флаги у инсталлера, просто добавил нужный флаг и готово, хотя там и паскаль есть, но это когда действительно надо... ЗЫ как бы тоже получается, что тоже решено - :) Код:
$VST = RegRead("HKLM\Software\VST","VSTPluginsPath") |
Цитата:
Код:
#include <Registry_UDFs.au3> |
Creat0R, Подскажи плз, нужно в ветке реестра (HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\hivelist','\REGISTRY\MACHINE\SYSTEM, HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\hivelist','\REGISTRY\MACHINE\SOFTWARE и HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\hivelist','\REGISTRY\USER) найти запись (\Device\HarddiskVolume2\Windows\System32\config\SYSTEM или \Device\HarddiskVolume2\Windows\System32\config\DEFAULT) и заменить HarddiskVolume2 на HarddiskVolume3, где HarddiskVolume3 это условный показать номера диска, который нужно ещё определить.
Система Windows 7. Пробовал пока найти номера диска таким методом: Но, я думаю, что выделенные фрагменты могут быть разными, поэтому нужен поиск. |
Время: 03:51. |
Время: 03:51.
© OSzone.net 2001-