在NSIS MUI脚本中,可以通过在该部分中添加“SectionIn RO”来强制执行部分。我想指出整个SectionGroup是强制性的。我知道我可以强制使用每个单独的组件,默认情况下该组是强制的,但仍然启用了SectionGroup复选框,表明用户可以将其关闭。这可能令人困惑。
对于SectionGroups,是否存在“SectionIn RO”的等效项,从而强制禁用该组的复选框?
答案 0 :(得分:2)
我想说这是一个NSIS错误。 (如果你决定在项目跟踪器上报告这个,你可以参考this bug,它应该已被修复为该bug的一部分)
强制readonly标志似乎有效:
SectionGroup /e foo SecFoo
Section bar
SectionIn RO
SectionEnd
Section baz
SectionIn RO
SectionEnd
SectionGroupEnd
page components "" ForceHackyRO
page InstFiles
!include Sections.nsh
Function ForceHackyRO
!insertmacro SetSectionFlag ${SecFoo} ${SF_RO}
FunctionEnd