Вопрос Выбор компонентов взависимости от архивов

Tjeyn

Новичок
В неких репаках видел. Допустим если не качать архив англ. или рус. озвучки, то в компонент-листе отсутствует выбор озвучки соответственно той, с которой нет архива. Как такое реализовать?
 

Хамик

Старожил
Tjeyn, приблизительно так:
Код:
[Setup]
AppName=MyApp
AppVerName=MyApp
DefaultDirname={pf}\MyApp

[Components]
Name: voice; Description: "Озвучка"; Check: IsRusorEng;
Name: voice\rus; Description: "Русская"; Check: IsRus;
Name: voice\eng; Description: "Английская"; Check: "IsEng";

[code]
function IsRus: boolean;
begin
    Result := FileExists(ExpandConstant( '{src}\russian.7z' ));
end;
function IsEng: boolean;
begin
    Result := FileExists(ExpandConstant( '{src}\english.7z' ));
end;
function IsRusorEng: boolean;
begin
    Result := FileExists(ExpandConstant( '{src}\russian.7z' )) or FileExists(ExpandConstant( '{src}\english.7z' ));
end;
При наличии любого архива озвучки радом с инсталлятором.
 

Tjeyn

Новичок
Хамик, страницу компонентов не отображает!
Файлы "english.7z" и "russian.7z" положил рядом с инсталлятором
 

Tjeyn

Новичок
Проблему решил. Сначала жал через WinRar, формат поставил .7z не отображало! Сжал через 7Zip, формат тот-же, теперь все отображает!
 

Mickey1s

Ветеран
Модератор
Проще можно:

[Components]
Name: voice; Description: "Озвучка";
Name: voice\rus; Description: "Русская"; Check: FileExists(ExpandConstant('{src}\voice_rus.arc'))
Name: voice\eng; Description: "Английская"; Check: FileExists(ExpandConstant('{src}\voice_eng.arc'))
 
Сверху