我正在尝试为普通和便携式安装创建单个安装程序。对于便携式安装,我禁用所有图标和卸载程序。
我遇到的唯一问题是如何在运行便携式安装时禁用程序组页面。我在这里误解了什么吗?
[Setup]
;This works as expected
Uninstallable=not IsPortable()
;This does NOT work, can't compile (DisableProgramGroupPage=yes alone compiles fine)
DisableProgramGroupPage=yes IsPortable()
编译失败,错误
[Setup] section directive ...的值无效。
这是IsPortable()
函数:
function IsPortable(): Boolean;
begin
if(StandardRadioButton.Checked = True) then
Result := False
else
Result := True;
end;
答案 0 :(得分:3)
(阐述@ TLama的评论)
DisableProgramGroupPage
不支持“布尔表达式”:
[设置]:DisableProgramGroupPage
有效值:auto
,yes
或no
与Uninstallable
相反:
[设置]:无法安装
有效值:yes
或no
,或布尔表达式
您可以改为使用ShouldSkipPage
event function:
function ShouldSkipPage(PageID: Integer): Boolean;
begin
Result := False;
if PageID = wpSelectProgramGroup then
begin
Result := IsPortable;
end;
end;