Inno setup 如何检查和修复InnoSetup项目中的组件?
我正在开发一个InnoSetup项目,我想知道如何始终安装组件(比如“Acrobat Reader”),但不允许取消选中组件列表中的该项。Inno setup 如何检查和修复InnoSetup项目中的组件?,inno-setup,Inno Setup,我正在开发一个InnoSetup项目,我想知道如何始终安装组件(比如“Acrobat Reader”),但不允许取消选中组件列表中的该项。 我不希望用户取消选中它。通常,当所选安装类型在其条目的参数中列出时,会选择组件。因此,如果您在那里列出所有可用的安装类型,它将始终处于选中状态 要禁用该组件,以便用户无法修改其状态,您需要包含条目的标志 因此,要使用默认安装类型(在本节中未指定自己的安装类型时使用)创建一个禁用的、始终选中的组件,您可以编写如下条目: [Components] Name: "
我不希望用户取消选中它。通常,当所选安装类型在其条目的参数中列出时,会选择组件。因此,如果您在那里列出所有可用的安装类型,它将始终处于选中状态 要禁用该组件,以便用户无法修改其状态,您需要包含条目的标志 因此,要使用默认安装类型(在本节中未指定自己的安装类型时使用)创建一个禁用的、始终选中的组件,您可以编写如下条目:
[Components]
Name: "main"; Description: "Main Files"; Types: full compact custom; Flags: fixed
在您的评论中,您询问了如何禁用任务条目。据我所知,没有直接的方法可以做到这一点,我唯一能想到的方法就是在事件代码中做到这一点:
很抱歉,该操作被定义为任务,并且任务没有“固定”标志。所以我需要定义一个具有该标志的组件。谢谢,是否可以修复任务?如何检查项目?我尝试使用
Check:1
或Check:True
但它们会导致编译错误。我添加了一个如何禁用任务项的示例。但是我更喜欢用逗号来做这个。关于第二个问题,如何检查哪一项?组件或任务?[Tasks]
用于“执行此操作”;[Components]
用于“安装此操作”。很适合强制安装第三方商业应用程序!这是一个例子。。我需要安装一组常用的必选库。。
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
[Tasks]
Name: something; Description: "Install something"
[Code]
procedure CurPageChanged(CurPageID: Integer);
begin
// the ItemEnabled property uses a 0 based index for item access, so the following
// code you can read as, if we have entered the tasks selection page, disable the
// first tasks list item
if CurPageID = wpSelectTasks then
WizardForm.TasksList.ItemEnabled[0] := False;
end;