Вопрос Как настроить вывод компонентов по коду?

zettend

Старожил
Всем привет.
У меня есть код:
Код:
function RUSText: Boolean;
begin
   result:= not IsDoneError and BtnGetChecked(LanguagetextButton[1]);
end;

function ENGText: Boolean;
begin
   result:= not IsDoneError and BtnGetChecked(LanguagetextButton[2]);
end;

procedure SelectLanguagetext(hBtn:HWND);
begin
  BtnSetChecked(hBtn,True);
  if hBtn=LanguagetextButton[1] then begin
    BtnSetChecked(LanguagetextButton[2],False);
  end else begin
    BtnSetChecked(LanguagetextButton[1],False);
  end;
end;

function RUSVoice: Boolean;
begin
   result:= not IsDoneError and BtnGetChecked(LanguagevoiceButton[1]);
end;

function ENGVoice: Boolean;
begin
   result:= not IsDoneError and BtnGetChecked(LanguagevoiceButton[2]);
end;

procedure SelectLanguagevoice(hBtn:HWND);
begin
  BtnSetChecked(hBtn,True);
  if hBtn=LanguagevoiceButton[1] then begin
    BtnSetChecked(LanguagevoiceButton[2],False);
  end else begin
    BtnSetChecked(LanguagevoiceButton[1],False);
  end;
end;

procedure Languagetext1LabelClick(Sender:TObject);
begin
  BtnSetChecked(LanguagetextButton[1], not BtnGetChecked(LanguagetextButton[1]));
  SelectLanguagetext(LanguagetextButton[1]);
end;

procedure Languagetext2LabelClick(Sender:TObject);
begin
  BtnSetChecked(LanguagetextButton[2], not BtnGetChecked(LanguagetextButton[2]));
  SelectLanguagetext(LanguagetextButton[2]);
end;

procedure LanguageVoice1LabelClick(Sender:TObject);
begin
  BtnSetChecked(LanguagevoiceButton[1], not BtnGetChecked(LanguagevoiceButton[1]));
  SelectLanguagevoice(LanguagevoiceButton[1]);
end;

procedure LanguageVoice2LabelClick(Sender:TObject);
begin
  BtnSetChecked(LanguagevoiceButton[2], not BtnGetChecked(LanguagevoiceButton[2]));
  SelectLanguagevoice(LanguagevoiceButton[2]);
end;
И есть уже настроенные компоненты в ISDone:
Код:
// Подготавливаем переменную, содержащую всю информацию о выделенных компонентах для ISDone.dll
// максимум 96 компонентов.
    Comps1:=0; Comps2:=0; Comps3:=0;
#ifdef Components
    TmpValue:=1;
    if BtnGetChecked(LanguagetextButton[1]) then Comps1:=Comps1+TmpValue;     //компонент 1
    TmpValue:=TmpValue*2;
    if BtnGetChecked(LanguagetextButton[2]) then Comps1:=Comps1+TmpValue;     //компонент 2
    TmpValue:=TmpValue*2;
    if BtnGetChecked(LanguagevoiceButton[1]) then Comps1:=Comps1+TmpValue;    //компонент 3
    TmpValue:=TmpValue*2;
    if BtnGetChecked(LanguagevoiceButton[2]) then Comps1:=Comps1+TmpValue;    //компонент 4
#endif
Так вот, может кто подскажет как сделать при выборе компонентов определенный запуск программ и реестра по этому коду?
 

Shegorat

Lord of Madness
Администратор
Так вот, может кто подскажет как сделать при выборе компонентов определенный запуск программ и реестра по этому коду?
В стандартных секциях инно, есть действие Check, которое обрабатывает булевые функции из секции code, к примеру
Код:
[Run] 
Filename: "{app}\INIT.EXE"; Parameters: "/ru"; Check: RUSVoice
Filename: "{app}\INIT.EXE"; Parameters: "/en"; Check: ENGVoice
То же самое действует и для остальных секций, как [files], [icons] и т.д.
Об этом также можно прочитать в справке.
 

zettend

Старожил
Shegorat, Спасибо. Я не до конца врубаюсь в справку. Буду внимательный.
 
Сверху