кроме восстановления файлов при нажатии кнопки "Отмена"
Проверил, у меня востановление файлов работает.
Код: Выделить всё
из своего скрипта, он постепенно развивается, а затем взял полностью весь скрипт, который Вы переделали и скомпилировал файл-инсталлятор и с этого файла запускал, результат виден: [url=http://imageshost.ru/links/93aee4463dd879fc71a48d285fedf10f][/url]. На картинке видно, что папка Backup присутствует и не удалена, а файлов-оригиналов нет. Повторно инсталлятор не запустился, подтверждая, что файла [b]TS3.exe[/b] - нет!
[b]P.S.[/b]
[b]Serega[/b], а у Вас какой Inno Setup стоит, случаем не юникодовская бетка, у меня: ISPack 5.3.2 beta с катайскима дополнениями (Inno Setup ISCmplr 5.2.3 build 090424 и Inno Setup Compiler 5.2.3 build 090506 English). Может быть из-за этого у меня не идет скрипт?Код: Выделить всё
procedure RecoveryBackup;
var
FindFiles: TFindRec;
MyDir, BackupDir: string;
begin
MyDir:= ExpandConstant('{app}\Game\Bin\');
BackupDir:= ExpandConstant('{app}\Game\Bin\Backup\');
if DirExists(BackupDir) then
if FindFirst(BackupDir + '*.*', FindFiles) then
begin
repeat
MoveFile(BackupDir + FindFiles.Name, MyDir + FindFiles.Name);
until not FindNext(FindFiles);
FindClose(FindFiles);
RemoveDir(BackupDir)
end;
end;Код: Выделить всё
procedure RecoveryBackup;
var
FindFiles: TFindRec;
MyDir, BackDir: string;
begin
MyDir:= ExpandConstant('{app}\Game\Bin\');
BackDir:= ExpandConstant('{app}\Game\Bin\Backup\');
if DirExists(BackDir) then
if FindFirst(BackDir + '*.*', FindFiles) then
begin
repeat
MoveFile(BackDir + FindFiles.Name, MyDir + FindFiles.Name);
until not FindNext(FindFiles);
FindClose(FindFiles);
RemoveDir(BackDir)
end;
end;