【问题标题】:QT installer framework disable "Modify" button in windows Apps & FeaturesQT 安装程序框架禁用 Windows 应用程序和功能中的“修改”按钮
【发布时间】:2018-01-28 02:23:08
【问题描述】:

我正在使用 QT 安装程序框架为 QT Windows 应用程序构建一个 Windows 安装程序。我想在 Windows 应用程序和功能(应用程序卸载)中禁用与我的应用程序关联的“修改”按钮。

据我了解,“修改”按钮的启用/禁用状态由 Windows 注册表项“NoModify”控制,位于:

“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall{GUID}”

此目录中的键和值由安装程序创建。

我在 installscript.qs 中使用了 component.addElevatedOperation "GlobalConfig" 或 component.addOperation "Settings" 来尝试修改注册表,但没有成功。

有什么建议吗?

提前致谢

【问题讨论】:

    标签: qt installation uninstallation


    【解决方案1】:

    根据我对 Windows Installer 的测试,我发现要在 Windows 应用程序和功能中启用“修改”按钮,需要在注册表的应用程序卸载键中填充“修改路径”可扩展字符串。

    修改路径 |由 Windows 安装程序确定和设置。

    Uninstall Registry Key - MSDN

    当使用 Windows Installer 属性阻止添加删除程序中的“删除”和“修复”选项时,不会创建可扩展字符串 ModifyPath,因此应用程序和功能中的修改选项不可用。

    ModifyPath 可扩展字符串的典型值为:

    MsiExec.exe /I{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}
    

    其中 {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} 是产品代码。但是,我在测试中也看到,如果可扩展字符串存在并且具有值,则修改选项在应用程序和功能中可用

    【讨论】:

      【解决方案2】:

      要从 Windows 应用和功能、卸载程序菜单禁用应用程序中的“修改”选项,您可以执行以下操作之一:

      1. config.xml 文件中添加一个新的<SupportsModify>false</SupportsModify> 值:
      <?xml version="1.0"?>
      <Installer>
          <Name>Some Application</Name>
          <Version>1.0.0</Version>
          <Title>Some Application Setup</Title>
          <Publisher>Your Company</Publisher>
          ...
          <SupportsModify>false</SupportsModify>
          ...
      </Installer>
      
      1. 或通过调用installer.setValue(...args) 方法将值“SupportsModify”设置为false:
      function Controller()
      {
        if (installer.isInstaller())
        {
          // Disable button "Modify" on windows Apps & feature uninstalls entry
          installer.setValue("SupportsModify", false);
        }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-11-20
        • 1970-01-01
        • 2015-02-02
        • 2018-08-05
        • 2017-01-13
        • 2021-04-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多