6

我使用预编译的 Qt Installer Framework 二进制文件 2.0.1 版为我的应用程序编写了一个安装程序。但是,安装程序窗口不会以任何可能的方式显示我的任何徽标。

有问题的徽标名为“installerlogo.png”,一个带有 alpha 通道的 64x64 图像,位于安装程序目录结构的顶部(与 config/ 和 packages/ 目录所在的目录相同。)

我为图标的目的制作了另一个徽标,名为“installericon.ico”,它只是上面的 16x16 版本,只是重命名为“.ico”(这是错误的做法吗?)

我在 config.xml 文件中尝试了以下内容:

<InstallerApplicationIcon>installericon</InstallerApplicationIcon>
<InstallerWindowIcon>installerlogo</InstallerWindowIcon>
<Logo>installerlogo.png</Logo>
<Background>installerlogo.png</Background>

但没有一个产生任何视觉结果。

4

2 回答 2

16

在互联网上对框架进行了更多研究之后,我现在发现我犯了几个错误。

  • 首先,简单地将 .png 更改为 .ico 是行不通的 - 正如我所发现的,.ico 格式的全部意义在于能够存储同一图像的多个分辨率,以防止在文件中放大时看起来模糊探险家。解决方案:http: //www.icoconverter.com/ - 这个网站允许从单个 png 创建一个全范围的 ico 文件。

  • 其次,ico 不放在最顶层的目录中——它们应该放在与 config.xml 文件相同的目录中

  • 第三,不应在 config.xml 标记中为图标文件指定文件扩展名,例如“myicon.ico”——这是在解析文件时根据需要完成的。编辑:但是请注意,您确实需要在其他地方指定扩展名,例如在使用<Watermark>标签等时。

  • 第四,需要将其定义<WizardStyle>为“Modern”、“Classic”、“Mac”或“Aero”(不带引号)以启用特定功能——我现在忘记了,但是如果某些 xml 标志什么都不做,例如,<WizardStyle>是“经典”。我已经将我的设置为<WizardStyle>Modern</WizardStyle>,到目前为止一切正常。

  • 最后,一些标签只有与 installscrip.qs 文件一起使用才有意义。虽然这并没有特别妨碍我,但也有一点需要注意。

于 2015-09-05T18:53:45.023 回答
3

除了上面Maxim指出的优点之外,还有一件非常重要的事情。由于这个问题,我在过去的 2 个小时里一直在头疼。添加它,以便它对某人有帮助。

Windows 对 .exe 图标图像有某种缓存(基于 exe 名称和文件夹位置)

假设您第一次生成没有图像的安装程序 exe(可能您没有设置图像或配置中的图像设置不正确)。现在,当您第二次生成 exe 时,这次在配置中正确设置了图像,将 exe 放到具有相同名称的相同文件夹位置,exe 仍将具有旧的(默认)图像。

如果将 exe 复制到不同的文件夹位置,则该 exe 的图像会神奇地出现。否则,您应该在第二次尝试中生成具有不同名称的 exe,以反映更改后的图像。

于 2020-07-31T10:01:05.963 回答