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

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

Аватара для ZVSRus

Старожил


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

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


Цитата serg5:
В этом случае по отдельности.
Пример

Код: Выделить весь код
 #define MyAppName_1 "Программа 1"
 #define MyAppName_2 "Программа 2"

[Setup]
 AppName=My Program
 AppVerName=My Program v 1.7
 DefaultDirName={pf}\Программа 1
 OutputDir=.

[Files]
 Source: compiler:Examples\MyProg1.exe; DestDir: {app}; Check: IsChecked_1; Flags: ignoreversion;
 Source: compiler:Examples\MyProg2.exe; DestDir: {app}; Check: IsChecked_2; Flags: ignoreversion;

[Code__]
var
  Check: array [0..1] of TCheckBox;

procedure Check0(Sender: TObject);
begin
if Check[0].Checked then
begin
  Check[1].Checked := False;
end;

if (Check[0].Checked = False) and (Check[1].Checked = False) then Check[0].Checked := True;
if Check[0].Checked then WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{pf}')) + '{#MyAppName_1}';
end;

procedure Check1(Sender: TObject);
begin
if Check[1].Checked then
begin
  Check[0].Checked := False;
end;

if (Check[0].Checked = False) and (Check[1].Checked = False) then Check[1].Checked := True;
if Check[1].Checked then WizardForm.DirEdit.Text := AddBackslash(ExpandConstant('{sd}')) + '{#MyAppName_2}';
end;

//--------------------------------------------------\\
function IsChecked_1: boolean;
begin
	Result:= Check[0].Checked;
end;
//--------------------------------------------------\\
function IsChecked_2: boolean;
begin
	Result:= Check[1].Checked;
end;
//--------------------------------------------------\\

procedure InitializeWizard();
begin
Check[0] := TCheckBox.Create(WizardForm);
  with Check[0] do
  begin
    Parent := WizardForm.SelectDirPage;
    Checked := True;
    Top := ScaleY(120);
    OnClick := @Check0;
    Caption := 'Программа 1';
  end;

Check[1] := TCheckBox.Create(WizardForm);
  with Check[1] do
  begin
    Parent := WizardForm.SelectDirPage;
    Top := ScaleY(150);
    OnClick := @Check1;
    Caption := 'Программа 2';
  end;
end;

-------
Inno Setup 5.5.1.ee2 Ultra ANSI Unicode

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:15, 06-07-2022 | #784