任何人都有從Qt中設置應用程序信息的提示(即右鍵單擊.exe->屬性)?在Windows上設置Qt可執行文件中的應用程序信息
我可以添加任意版本字符串到Qt資源文件(qrc)並顯示它們。 但大多數Windows安裝程序檢查版本號,我找不到一個Qt的方式來設置這些字段,而不是手動維護一個單獨的.RC文件
某種方式可以讓你從自動構建更新這也將是很好的!
任何人都有從Qt中設置應用程序信息的提示(即右鍵單擊.exe->屬性)?在Windows上設置Qt可執行文件中的應用程序信息
我可以添加任意版本字符串到Qt資源文件(qrc)並顯示它們。 但大多數Windows安裝程序檢查版本號,我找不到一個Qt的方式來設置這些字段,而不是手動維護一個單獨的.RC文件
某種方式可以讓你從自動構建更新這也將是很好的!
這裏是我如何做到這一點......一個名爲resources.rc文件添加到您的項目與內容:
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
和與內容叫version.h文件,方法:
#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 = resources.rc
。非Windows平臺將忽略該值,因此您不需要在win32:
前加前綴。
好了,兩年後被問...但也許有人會發現它很有用...
嘗試使用下面的qmake變量:
VERSION = 0.4.0.1
QMAKE_TARGET_COMPANY = company
QMAKE_TARGET_PRODUCT = product
QMAKE_TARGET_DESCRIPTION = description
QMAKE_TARGET_COPYRIGHT = copyright
更多信息here。
謝謝 - 這仍然保持一個單獨的rc文件。我最終做了一些事情,我的python構建腳本就像這樣寫了一個RC文件。 – 2010-07-24 05:42:40
這對我沒有用 沒有任何改變將所有這些代碼添加到資源文件 – 2010-11-10 21:37:08
它工作的很好。確保你包含了任何RC文件的路徑。 #Windows RC文件 RC_FILE = $$ PWD/resources/resources.rc – 2012-01-06 19:51:53