我现在已经在Qt中完成了我的应用程序。我想部署它以及其他一些事情,当有人右键单击可执行文件并查看详细信息时,我想设置应用程序信息。
我发现的最佳信息来源是此链接:Setting application info in a Qt executable file on Windows
然而,在Qt5中,在创建.qrc文件和前缀后,我无法使其工作。如果在Qt之外编辑.qrc文件,则在Qt中打开它时总会出现未知错误。
有人可以给我一个工作实例吗?它在上面的链接中显示的方式正是我想要做的。
提前致谢!
答案 0 :(得分:0)
只需创建文件" resources.rc"使用Qt Creator"文件" - >"项目的新文件..." - >"一般" - >"文本文件&#34 ;或者使用此上下文在项目文件夹中使用任何文本编辑器:
IDI_ICON1 ICON DISCARDABLE "res/app.ico"
#include <windows.h>
#include "version.h"
VS_VERSION_INFO VERSIONINFO
FILEVERSION VER_FILEVERSION
PRODUCTVERSION VER_PRODUCTVERSION
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904E4"
BEGIN
VALUE "CompanyName", VER_COMPANYNAME_STR
VALUE "FileDescription", VER_FILEDESCRIPTION_STR
VALUE "FileVersion", VER_FILEVERSION_STR
VALUE "InternalName", VER_INTERNALNAME_STR
VALUE "LegalCopyright", VER_LEGALCOPYRIGHT_STR
VALUE "LegalTrademarks1", VER_LEGALTRADEMARKS1_STR
VALUE "LegalTrademarks2", VER_LEGALTRADEMARKS2_STR
VALUE "OriginalFilename", VER_ORIGINALFILENAME_STR
VALUE "ProductName", VER_PRODUCTNAME_STR
VALUE "ProductVersion", VER_PRODUCTVERSION_STR
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1252
END
END
您还应该有头文件&#34; version.h&#34;在你的项目中:
#ifndef VERSION_H
#define VERSION_H
#define VER_FILEVERSION 1,0,0,0
#define VER_FILEVERSION_STR "1.0.0.0\0"
#define VER_PRODUCTVERSION 1,0,0,0
#define VER_PRODUCTVERSION_STR "1.0\0"
#define VER_COMPANYNAME_STR "Your Organization"
#define VER_FILEDESCRIPTION_STR "CoolApplication"
#define VER_INTERNALNAME_STR "CoolApplication"
#define VER_LEGALCOPYRIGHT_STR "Copyright © 2010 Your Organization"
#define VER_LEGALTRADEMARKS1_STR "All Rights Reserved"
#define VER_LEGALTRADEMARKS2_STR VER_LEGALTRADEMARKS1_STR
#define VER_ORIGINALFILENAME_STR "coolapplication.exe"
#define VER_PRODUCTNAME_STR "CoolApplication"
#define VER_COMPANYDOMAIN_STR "example.org"
#endif // VERSION_H
然后在* .pro文件中添加
RC_FILE = file_prop_detail.rc
就是这样。这个方法适用于Qt 5.4。