You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何自定义Inno Setup全屏背景左上角文本标签(无需修改AppName)

问题回顾

默认情况下,启用WindowVisible参数时,Inno Setup 会将AppName参数的内容作为全屏背景左上角文本标签的显示来源,使用者希望在该标签中同时展示Publisher(发布者)与Version(版本)信息。
目前查阅的教程大多围绕自定义背景图片配置展开,没有找到修改该位置文本的方法,需要找到无需修改[Setup]段原有AppName参数值就能实现需求的方案。

原有配置脚本

#define MyAppName "MyAppName"
#define MyAppVer "4.1"

[Setup]
AppName={#MyAppName}
AppVersion={#MyAppVer}
AppVerName={#MyAppName} {#MyAppVer}
WindowVisible=True

界面参考

启用WindowVisible参数时的安装界面效果:
启用WindowVisible的Inno Setup界面截图


实现方案

该需求不需要修改原有AppName参数值,直接通过代码修改UI控件的显示文本即可实现:

  • 开启WindowVisible模式后,左上角的全屏文本标签对应向导主面板的WizardForm.MainPanel.StationName控件,默认加载AppName参数值作为显示内容。完全可以在安装向导初始化时,直接重写这个控件的Caption,拼接需要展示的发布者、版本信息,不会改动其他流程对AppName参数的调用。
  • 配置步骤:
    1. 原有[Setup]段的参数保持不变,新增AppPublisher参数存储发布者信息即可:
      [Setup]
      ; 原有参数完全保留,不做任何修改
      AppName={#MyAppName}
      AppVersion={#MyAppVer}
      AppVerName={#MyAppName} {#MyAppVer}
      WindowVisible=True
      ; 新增发布者参数,仅用于UI文本拼接
      AppPublisher="XXX软件工作室"
      
    2. 新增[Code]段,在InitializeWizard事件中修改标签的显示内容:
      procedure InitializeWizard();
      begin
        ; 在原有AppName显示内容基础上,拼接发布者和版本信息
        WizardForm.MainPanel.StationName.Caption := 
          WizardForm.MainPanel.StationName.Caption 
          + ' | 发布者:' + ExpandConstant('{#SetupSetting("AppPublisher")}')
          + ' | 版本:' + ExpandConstant('{#MyAppVer}');
      end;
      

注意:上述修改仅作用于UI显示层,不会影响安装流程中其他位置对AppName的调用(比如默认安装路径、注册表写入项、卸载程序标识等),完全符合不改动原有AppName参数的要求。


内容的提问来源于stack exchange,提问作者Maël Le Monnier

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.23 03:36:08