【发布时间】:2021-01-18 05:15:32
【问题描述】:
我在 NSIS 中创建了一个卸载程序。
它有 3 个页面(1 个自定义页面(确认)、宏 MUI_UNPAGE_INSTFILES 和另一个自定义页面(完成))。
我的问题是我无法隐藏“INSTFILES”页面中的“返回”按钮。 我尝试了各种方法来隐藏它,但它只是处于禁用状态。
这是我用来隐藏后退按钮的代码:
GetDlgItem $1 $HWNDPARENT 3
ShowWindow $1 ${SW_HIDE}
上面的代码在与 ID 1 和 2 一起使用时适用于 Next 和 Cancel 按钮。
上面的代码我在各个地方都试过了
- un.OnInit
- myGuiInit(自定义)
- 确认页面的页面LEAVE回调
- INSTFILES 页面的页面 PRE 回调
- INSTFILES 页面的页面 SHOW 回调
代码:
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE un.InstShow
UninstPage custom un.UninstConfirm_Show
!define MUI_PAGE_CUSTOMFUNCTION_PRE un.InstShow
!define MUI_PAGE_CUSTOMFUNCTION_SHOW un.InstShow
!insertmacro MUI_UNPAGE_INSTFILES
UninstPage custom un.UninstFinish_Show
un.InstShow 有隐藏按钮的逻辑。
任何帮助将不胜感激。我已经花了将近 4 到 5 个小时来解决这个问题。
这就是屏幕现在的样子(请注意,我在图像中隐藏了 Next 和 Cancel 按钮,以说明隐藏这些按钮对我来说效果很好):
【问题讨论】:
-
你的用户界面真的是这样的吗?您是否缺少 !insertmacro MUI_LANGUAGE?
标签: nsis