Как добавить строки, связанные с установкой, в сценарии InnoSetup?
В настоящее время, когда я обновляю программу, я делаю резервную копию существующих файлов в папку с именем backup в каталоге программы, например.
Source: "{app}\filename.exe"; DestDir: "{app}\backup"; Flags: external skipifsourcedoesntexist uninsneveruninstall
Есть ли способ указать или вычислить строки, чтобы код был что-то вроде
Source: "{app}\filename.exe"; DestDir: "{app}\backup{date}"; Flags: external skipifsourcedoesntexist uninsneveruninstall
или объединить дату с информацией о предыдущей версии
Source: "{app}\filename.exe"; DestDir: "{app}\backup{previous version}{date}"; Flags: external skipifsourcedoesntexist uninsneveruninstall
2 ответа
Решение
Пожалуйста, прочтите Сценарии на Паскале: Скриптовые сценарии и Сценарии на Паскале: Справочник по функциям поддержки. Также прочитайте это и это. Во всяком случае, вот как я это сделал:
[Dirs]
; create an empty folder...
Name: "{app}\{code:MyDateTimeString}"
[Code]
function MyDateTimeString(Param: String): String;
begin
Result := GetDateTimeString('yyyy.mm.dd_hh.nn.ss', #0, #0);
end;
Вы можете добавить динамические значения времени выполнения, используя {code:...}
постоянные
Пример получения текущей даты и создания резервной копии папки установки можно увидеть в вики ISXKB