从代码更改组件复选框状态后的 Inno Setup 更新磁盘 space

Inno Setup update disk space after changing components checkbox state from code

我得到了我可以 select 安装的组件(应用程序)列表(默认情况下它们都被选中)并且所有这些组件都得到了 ExtraDiskSpaceRequired。一开始,我动态地更改哪些应用程序应该被选中或取消选中,具体取决于它们是否已安装以及其他一些条件。

现在的问题是,当我在开始时从代码中检查组件(TNewCheckListBox 项)时 "Disk space required" 标签不会更新,直到我通过鼠标或键盘从列表中更改某些复选框的状态。

我尝试用以下方法修复它:

知道如何解决这个问题吗?

默认示例:

启动时通过代码更改状态后的示例:

注意:我使用的是Inno Setup 5.6.1 (u),暂时无法更新。

更新列表复选框的状态后触发 TNewCheckListBox.OnClickCheck 事件:

WizardForm.ComponentsList.OnClickCheck(WizardForm.ComponentsList);