【问题标题】:NSIS dual mode installer. Checking path validityNSIS 双模式安装程序。检查路径有效性
【发布时间】:2011-03-08 15:11:07
【问题描述】:

我正在编写一个 NSIS 安装程序,该安装程序仅在用户选择需要管理员权限的安装路径后才会升级。显然,我包含了 MUI_DIRECTORYPAGE_VERIFYONLEAVE 定义,以允许“下一步”按钮保持活动状态,即使用户选择了这样的路径。用户更改安装目录后,将调用 .onVerifyInstDir 我应该检查路径有效性并调用 Abort 以使“下一步”按钮变灰。问题是,仅针对有效路径调用 .onVerifyInstDir,因此如果用户输入“sdfasdfas”之类的内容,则不会调用该函数,并且“下一步”按钮将保持活动状态。当然,我可以在离开目录页面时验证路径,但是对于这种情况,我想要的是一个非活动的“下一步”按钮。有什么想法吗?

【问题讨论】:

    标签: uac nsis installation-path


    【解决方案1】:

    只要去掉MUI_DIRECTORYPAGE_VERIFYONLEAVE,目录页不检查是否需要提升。

    另一个选项是 subclass 编辑框,但你必须自己验证路径。

    【讨论】:

    • 是的,我不知何故错过了,目录页面没有检查写入 $INSTALLDIR 的权限。谢谢!
    猜你喜欢
    • 2013-05-25
    • 2010-11-29
    • 2020-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-13
    相关资源
    最近更新 更多