c++ - Qt 5.5 和 Qt Installer Framework 2.0.1 : Logo is not displayed despite being present in config. xml

标签 c++ qt qt-installer

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

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

为了图标的目的我又做了一个logo,名字叫“installericon.ico”,就是上面那个的16x16版本,只是简单的重命名为“.ico”(是不是做法不对?)

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

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

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

最佳答案

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

  • 首先,简单地将 .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 文件一起使用才有意义。虽然这并没有特别妨碍我,但也有一点需要注意。

关于c++ - Qt 5.5 和 Qt Installer Framework 2.0.1 : Logo is not displayed despite being present in config. xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32414297/

相关文章:

python - 延迟加载子项 Qtreeview

windows - Qt 安装程序框架 : How to uninstall previous versions?

javascript - 带背景图片的Qt Installer

Qt Installer Framework 问题编译 binarycreator

c++ - 复制到 QMap 时出现 QString 错误。范围问题?

c++ - 如何手动包装纹理坐标?

c++ - 未显式传递参数时使用 lambda 默认为用户输入

c++ - 将 Google 的协议(protocol) Buffer 添加到 Qt ;禁用编译器警告

c++ - 未处理的异常处理更改了C++

c++ - 如何从 C++ 的文本字段中读取文本