0

当我使用这样的脚本时,没关系:

...
!define MUI_PAGE_CUSTOMFUNCTION_PRE onlymodeA
!insertmacro MUI_UNPAGE_LICENSE "${NSISDIR}\Docs\Modern UI\License.txt"
!define MUI_PAGE_CUSTOMFUNCTION_PRE onlymodeA
!insertmacro MUI_UNPAGE_INSTFILES
...

但是当我使用这个脚本时,我遇到了错误 - !定义:“MUI_UNPAGE_CUSTOMFUNCTION_PRE”已经定义!

...
!define MUI_UNPAGE_CUSTOMFUNCTION_PRE un.onlymodeA
!insertmacro MUI_UNPAGE_LICENSE "${NSISDIR}\Docs\Modern UI\License.txt"
!define MUI_UNPAGE_CUSTOMFUNCTION_PRE un.onlymodeA
!insertmacro MUI_UNPAGE_INSTFILES
...

有什么不同?

4

1 回答 1

2

定义是每页的MUI_PAGE_CUSTOMFUNCTION_*,创建页面的 !insertmacro 调用将MUI_PAGE_CUSTOMFUNCTION_*在使用它们的内容后取消定义。MUI_UNPAGE_CUSTOMFUNCTION_PRE不是 MUI 定义,将保留在宏之后,当您尝试再次定义它时,您会得到一个正常的编译器错误...

于 2012-10-29T17:33:16.697 回答