Amursky
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Подскажите пожалуйста, как можно оптимизировать код бэкапа реестра и восстановления этого бэкапа. Сейчас есть вот так: Код: procedure BackupReg(); var res: Integer; BackupDir, Key, RegEdit: string; begin RegEdit:= ExpandConstant('{win}\regedit.exe'); BackupDir:= ExpandConstant('{pf}\InstallShield Installation Information\$RimPackUninstall$\'); Key:= 'HKEY_LOCAL_MACHINE\SOFTWARE\GNU'; Exec(RegEdit, ' -ea 00.reg ' + AddQuotes(Key), BackupDir, SW_HIDE, ewNoWait, Res); Key:= 'HKEY_CURRENT_USER\SOFTWARE\GNU'; Exec(RegEdit, ' -ea 01.reg ' + AddQuotes(Key), BackupDir, SW_HIDE, ewNoWait, Res); | и Код: procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); var reg,RegEdit: string; res: integer; begin RegEdit:= ExpandConstant('{sys}\reg.exe'); if CurUninstallStep = usPostUninstall then begin reg:= ExpandConstant('{pf}\InstallShield Installation Information\$RimPackUninstall$\00.reg'); if FileExists(reg) = True then Exec(RegEdit, ' import ' + AddQuotes(reg),ExpandConstant('{win}'),SW_HIDE,ewNoWait,res); reg:= ExpandConstant('{pf}\InstallShield Installation Information\$RimPackUninstall$\01.reg'); if FileExists(reg) = True then Exec(RegEdit, ' import ' + AddQuotes(reg),ExpandConstant('{win}'),SW_HIDE,ewNoWait,res); | Желательно для бэкапа предопределить массив строк с путями реестра (совсем хорошо если в итоге получится один файл - для этого в конце достаточно запустить copy 01.reg+02.reg+...+50.reg 000.reg в папке с бэкапами) Заранее благодарю! | Всего записей: 13 | Зарегистр. 02-07-2009 | Отправлено: 15:04 09-12-2009 | Исправлено: Amursky, 15:07 09-12-2009 |
|