Имя пользователя:
Пароль:
 

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

Аватара для El Sanchez

Ветеран


Contributor


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

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


Цитата Kashtan007:
Поэтому самый лучший вариант перенести чекбоксы на страницу каталога. »
Kashtan007, хозяин - барин.
читать дальше »

Код: Выделить весь код
[Setup]
AppName=test2
AppVerName=test2
DefaultDirName=D:\test

[Languages]
Name: ru; MessagesFile: compiler:Languages\russian.isl

[CustomMessages]
ru.DeleteOldMods=Удалить все старые моды
ru.CreateBackupOldMods=Сохранить бекап старых модов
ru.DeletingOldMods=Удаление старых модов...
ru.RestoringOldMods=Восстановление старых модов...

[Files]
Source: {app}\res_mods\*; DestDir: {app}\ModPack\BackUp\res_mods; Flags: external createallsubdirs recursesubdirs skipifsourcedoesntexist; Check: IsOldMods('CreateBackupOldMods')
Source: {app}\path.file; DestDir: {app}\ModPack\OriginalFiles; Flags: external skipifsourcedoesntexist

[Run]
Filename: {cmd}; Parameters: "/c rd /s /q ""{app}\res_mods\0.9.2"" & md ""{app}\res_mods\0.9.2"""; StatusMsg: {cm:DeletingOldMods}; Flags: runhidden; Check: IsOldMods('DeleteOldMods')
Filename: {cmd}; Parameters: "/c rd /s /q ""{app}\res_mods\xvm"""; StatusMsg: {cm:DeletingOldMods}; Flags: runhidden; Check: IsOldMods('DeleteOldMods')

[UninstallRun]
Filename: {cmd}; Parameters: "/c xcopy /ecihry ""{app}\ModPack\BackUp\res_mods"" ""{app}\res_mods\"""; StatusMsg: {cm:DeletingOldMods}; Flags: runhidden; Check: IsOldMods('CreateBackupOldMods')
Filename: {cmd}; Parameters: "/c xcopy /ecihry ""{app}\ModPack\OriginalFiles\path.file"" ""{app}\"""; Flags: runhidden

[code]
var
    OldModsListBox: TNewCheckListBox;

///////////////////////////////////////////////
function IsOldMods(const Msg: String): Boolean;
begin
    with OldModsListBox do
        Result := Checked[Items.IndexOf(CustomMessage(Msg))]
end;

//////////////////////////////
procedure CreateSelectDirPage;
var
    rt: TRect;
begin
    OldModsListBox := TNewCheckListBox.Create(WizardForm);
    with OldModsListBox do
    begin
        Parent := WizardForm.SelectDirPage;
        Top := WizardForm.DirEdit.Top + WizardForm.DirEdit.Height + ScaleY(10);
        Width := Parent.ClientWidth;
        BorderStyle := bsNone;
        ParentColor := True;
        ShowLines := False;
        WantTabs := True;
        AddCheckBox(CustomMessage('DeleteOldMods'), '', 0, True, True, True, False, nil);
        AddCheckBox(CustomMessage('CreateBackupOldMods'), '', 1, True, True, False, True, nil);
        rt := ItemRect(ItemCount-1);
        Height := rt.Bottom;
    end;
end;

/////////////////////////////
procedure InitializeWizard();
begin
    CreateSelectDirPage;
end;
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:25, 23-09-2014 | #1608