为没有qmake/VS的Qt Windows应用程序设置.exe图标



在资源管理器的exe文件中显示的Windows上添加Qt应用程序图标的步骤是什么?

目前,我的图标显示在应用程序 GUI 窗口中,但不显示在资源管理器中的 exe 文件本身上。

如何在基于 Qt 的项目中设置应用程序图标的答案?显示了如何通过 qmake 进行操作,方法是添加我不使用 qmakeRC_ICONS。我不使用VS,我直接使用编译器和任何工具VS在带有Qt的标准C++应用程序中。

是否可以找到手动执行的步骤?Qt指的是winres.exe但是有没有办法直接使用Qt工具,或者VS附带的任何工具?

我通过编译来手动添加图标,我在Qt Designer中设计GUI,然后在Windows 10上通过简单的批处理文件进行编译。dtresources.qrc是在Qt Designer中创建的。然后从资源文件中选择 GUI 窗口图标。

例:

%qtdir%binrcc -name icons dtresources.qrc -o detail/dtresources.cpp
set src=detail/dtresources.cpp *.cpp
cl /EHsc /MDd /Zi /nologo /Fa"x64/debug/" /Fd"x64/debug/vc120.pdb" /Fo"x64/debug/" /Fp"x64/debug
/%appname%.pch"  /I"%qtdir%/include" /I"%qtdir%/include/QtCore" /I"%qtdir%/include/QtGui"
/I"%qtdir%/include/QtWidgets" "%qtdir%/lib/Qt5Guid.lib" "%qtdir%/lib/Qt5Widgetsd.lib"
"%qtdir%/lib/Qt5Cored.lib" %src% /link /out:"x64/debug/%appname%.exe"

示例 .qrc:

<RCC>
<qresource prefix="res">
<file>res/app.ico</file>
</qresource>
</RCC>

是的,你可以。Windows SDK不是windres.exe,而是提供rc.exe,也就是资源编译器。您首先需要一张.ico格式的图像(此处名为"app.ico"(和一个名为"app.rc"的文本文件,其中包含以下内容:

IDI_ICON1               ICON    DISCARDABLE     "app.ico"

您可以使用以下命令编译此文件:

rc app.rc

该命令将生成一个名为"app.res"的文件。此RES文件可以直接由链接器处理,也可以使用以下命令将其转换为.obj:

cvtres /MACHINE:X64 app.res

该命令生成一个名为"app.obj"的文件(对于体系结构x86_64,请使用cvtres /h查看其他参数(。生成可执行文件时,需要将此 .obj 文件提供给链接器。"cvtres.exe"来自VC编译器bin目录,而不是Windows SDK。

最新更新