Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Новый участник


Сообщения: 2
Благодарности: 0

Профиль | Отправить PM | Цитировать


Привет всем, уважаемые программисты! Помогите мне (чайнику) разобраться с моим скриптом.

Задача простая.
Мой сетап должен ставить в каталог с программой дополнительные файлы (что он успешно и делает), но при этом необходимо сделать до инсталяции резервную копию одного из заменяемых файлов (вот тут то и проблема, не хочет работать).
При деинсталяции резервный файл надо вернуть на место (до этого еще не дошел).
Файл предполагается копировать в папку "backup" , которая должна создаться в том же каталоге куда инсталятся файлы.

Вот код скрипта полностью:
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

[Setup]
AppName=Death a Board (beta5)
AppVerName=Дополнение к Left 4 Dead
DefaultDirName=C:\Program Files\Steam\SteamApps\Common\left4dead
DefaultGroupName=Death a Board (beta5)
DisableProgramGroupPage=yes
OutputDir=E:\Загрузки\Output
OutputBaseFilename=setup
SetupIconFile=E:\Left4Dead\left4dead\Left 4 Dead Demo.ico
Compression=lzma
SolidCompression=yes

[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"

[Files]
Source: "E:\Загрузки\Output\left4dead\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files

[code]
procedure CurStepChanged(CurStep: TSetupStep);
var
s1, s2: string;
begin
s1:=ExpandConstant('{app}')+'\resource\UI\L4D360UI\LoadingPosters.res';
s2:=ExpandConstant('{app}')+'\Backup\left4dead\resource\UI\L4D360UI';
If FileExists(s1) then
begin
CreateDir(s2);
FileCopy(s1, s2+'\LoadingPosters.res', True);
end;
end;

Отправлено: 02:11, 03-06-2009 | #844