我正在编写一个NSIS安装程序,只有在用户选择需要管理员权限的路径安装后才会提升。显然,我包含了MUI_DIRECTORYPAGE_VERIFYONLEAVE定义,即使用户选择了这样的路径,也允许“下一步”按钮保持活动状态。用户更改安装目录后,调用.onVerifyInstDir,我应该检查路径有效性并调用Abort以显示“下一步”按钮。问题是,.onVerifyInstDir仅针对有效路径调用,因此如果用户输入类似“sdfasdfas”的内容,则不会调用该函数,并且“Next”按钮将保持活动状态。当然,我可以在离开目录页面时验证路径,但我想要的是这种情况下的非活动“下一步”按钮。有什么想法吗?
答案 0 :(得分:1)
只需删除MUI_DIRECTORYPAGE_VERIFYONLEAVE,目录页面不会检查您是否需要提升。
另一个选项是subclass编辑框,但是你必须自己验证路径。