使用Inno Setup,是否可以更改安装程序的窗口标题栏?

12

使用Inno Setup是否可以更改安装程序的标题栏?

默认情况下是:

AppName=My Program

当运行设置时,标题栏会出现:

设置 - 我的程序

是否有可能隐藏“设置”这个词?

6个回答

22

在你的InnoSetup脚本文件中添加以下行:

[Messages]
// define wizard title and tray status msg
// both are normally defined in innosetup's default.isl (install folder)
SetupAppTitle = Setup YourApplicationShortName
SetupWindowTitle = Setup - YourApplicationName YourApplicationVersion

这将修改托盘中的“标题栏”和“应用程序标题”。

我建议不要修改/innosetup/default.isl中的默认配置,就像Sertac Akyuz所指出的那样。把这个文件看作是备用配置。 如果您没有定义设置,则该设置将从default.isl中获取。 只需修改您的文件,而不是默认设置!


1
如果您需要在设置中使用其他语言,则应复制此部分中的每个条目,并通过添加语言的内部名称前缀并跟随一个句点来本地化它。例如:russian.SetupAppTitle=Установка。请参阅InnoSetup帮助文件中的[Languages]部分以查找语言的内部名称。 - kot-da-vinci

4
如果您想更改主表单的标题,请尝试以下方法:
[code]
procedure CurPageChanged(CurPageID: Integer);
begin
  if CurPageID = wpWelcome then
    WizardForm.Caption := 'Welcome to My Program';
end;

很遗憾,这不会改变任务栏上的“设置”标题。由于这是一个Delphi应用程序,您需要访问Application全局变量才能轻松更改此变量,但是该对象未暴露给Pascal脚本,并且我不知道直接做到这一点的任何方法。我认为您可以按照 @satuon 的建议使用Windows消息进行更改。


3
在InnoSetup安装文件夹中有一个名为default.isl的文件,用文本编辑器打开该文件,找到SetupWindowTitle条目,并将右侧从Setup - %1更改为仅%1。同样地,对于您在设置中使用的其他语言,请重复此过程,您会在“Languages”文件夹中找到相应的“.isl”文件。

3
这个回答是错误的。虽然它可以工作,但是它是错误的。如果你需要覆盖Inno Setup中默认的消息,则应该像Jens A Koch建议的那样使用安装脚本文件中的[Messages]部分。将default.isl中的相关行复制到您的脚本的[Messages]部分,并根据需要进行编辑。您仍然可以使用%1样式的变量。 - Nicolas
@Nicolas - “这个答案是错误的。” - 我认为一个能够满足问题要求的解决方案并不算错,也许你的意思是“实施这个解决方案是错误的”。 - Sertac Akyuz
是的,被接受的答案确实解决了这个问题,也许它实际上并没有错。这取决于问题的本质:如果要更改由此Inno Setup配置创建的所有设置的标题,则应修改default.isl,但如果您只想更改特定设置的标题,则需要在脚本中添加[Messages]部分。 - Nicolas

2
更好的解决方案(如果您想让您的iss安装程序在任何计算机上正确编译),是在Languages文件定义之后,在Messages部分重新定义特定语言字符串。
例如:
[Languages]
Name: de; MessagesFile: compiler:Languages\German.isl
;Name: en; MessagesFile: compiler:Default.isl

[Messages]
WizardReady=I am ready.

2

简单无代码

[Messages]
SetupWindowTitle=Your Programme Name

0

你可以使用Pascal脚本来实现这个功能。Inno Setup允许你在Pascal部分调用SendMessage和PostMessage。尝试使用它们向你的窗口发送WM_SETTEXT消息。


这似乎有点像黑客行为,不是吗?请注意,这是一种间接的解决方案,可能会起作用,但仍然不是理想的。 - Bernard

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接