Я уже как-то спрашивал, но немного по другому... Как в этом [more=скрипте][Setup]
AppName=My Program
AppVerName=My Program 1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Components]
Name: main; Description: Моя программа™; Check: IsComponent1; Types: full custom; Flags: fixed
Name: help; Description: Помощь; Types: full custom
Name: help\documentation; Description: Документация; Check: IsComponent2; Types: full custom
Name: help\manual; Description: Руководство пользователя; Check: IsComponent3; Types: full custom
[Files]
Source: {src}\main\proga.exe; DestDir: {app}; Components: main; Flags: ignoreversion external
Source: {src}\main\documentation.txt; DestDir: {app}; Components: help\documentation; Flags: ignoreversion external
Source: {src}\main\manual.txt; DestDir: {app}; Components: help\manual; Flags: ignoreversion external
[Code]
function IsComponent1:boolean;
begin
Result:=True;
begin
If (FileSearch('proga.exe', ExpandConstant('{src}\main'))='') then
Result:=False
end;
end;
function IsComponent2:boolean;
begin
Result:=True;
begin
If (FileSearch('documentation.txt', ExpandConstant('{src}\main'))='') then
Result:=False
end;
end;
function IsComponent3:boolean;
begin
Result:=True;
begin
If (FileSearch('manual.txt', ExpandConstant('{src}\main'))='') then
Result:=False
end;
end;
[/more], сделать, когда происходит проверка на присутствие внешнего компонента, то он не пропадал в списке компонентов, а был не активен, т.е. выбрать его нельзя.
Всех со старым НОВЫМ ГОДОМ!!!
AppName=My Program
AppVerName=My Program 1.5
DefaultDirName={pf}\My Program
DefaultGroupName=My Program
[Languages]
Name: russian; MessagesFile: compiler:Languages\Russian.isl
[Components]
Name: main; Description: Моя программа™; Check: IsComponent1; Types: full custom; Flags: fixed
Name: help; Description: Помощь; Types: full custom
Name: help\documentation; Description: Документация; Check: IsComponent2; Types: full custom
Name: help\manual; Description: Руководство пользователя; Check: IsComponent3; Types: full custom
[Files]
Source: {src}\main\proga.exe; DestDir: {app}; Components: main; Flags: ignoreversion external
Source: {src}\main\documentation.txt; DestDir: {app}; Components: help\documentation; Flags: ignoreversion external
Source: {src}\main\manual.txt; DestDir: {app}; Components: help\manual; Flags: ignoreversion external
[Code]
function IsComponent1:boolean;
begin
Result:=True;
begin
If (FileSearch('proga.exe', ExpandConstant('{src}\main'))='') then
Result:=False
end;
end;
function IsComponent2:boolean;
begin
Result:=True;
begin
If (FileSearch('documentation.txt', ExpandConstant('{src}\main'))='') then
Result:=False
end;
end;
function IsComponent3:boolean;
begin
Result:=True;
begin
If (FileSearch('manual.txt', ExpandConstant('{src}\main'))='') then
Result:=False
end;
end;
[/more], сделать, когда происходит проверка на присутствие внешнего компонента, то он не пропадал в списке компонентов, а был не активен, т.е. выбрать его нельзя.
Всех со старым НОВЫМ ГОДОМ!!!