為QT程式增加版本等屬性資訊

useraka發表於2024-05-29

1.在pro檔案中增加 VERSION=1.0.0.0,編譯後,會在debug或release目錄下生成xxx_resource.rc檔案,使用編輯器開啟進行編輯;
2.在pro檔案中增加RC_FILE = xxx_resource.rc,VERSION自動失效,編譯後,即可增加屬性資訊。

注意:由QT自動生成的RC檔案預設使用UTF-8編碼,屬性資訊中若含中文,windows系統會顯示亂碼,因為windows系統對於RC檔案預設使用ANSI編碼進行識別。
可使用文字編輯器切換為ANSI編碼編輯中文並儲存,解決中文亂碼問題。

xxx_resource.rc的檔案內容如下:

點選檢視程式碼
#include <windows.h>

VS_VERSION_INFO VERSIONINFO
	FILEVERSION 1,0,0,0
	PRODUCTVERSION 1,0,0,0
	FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
	FILEFLAGS VS_FF_DEBUG
#else
	FILEFLAGS 0x0L
#endif
	FILEOS VOS__WINDOWS32
	FILETYPE VFT_DLL
	FILESUBTYPE 0x0L
	BEGIN
		BLOCK "StringFileInfo"
		BEGIN
			BLOCK "040904b0"
			BEGIN
				VALUE "CompanyName", "MyCompany\0"  #公司
				VALUE "FileDescription", "based on Qt 5.14.2 MSVC2017 64-bit\0"  #檔案描述
				VALUE "FileVersion", "1.0.0.0\0"  #檔案版本
				VALUE "LegalCopyright", "@2020-2024 MyCompany\0"  #版權宣告
				VALUE "OriginalFilename", "myTest.exe\0"  #檔案原始名稱
				VALUE "ProductName", "myTest\0"  #產品名稱
				VALUE "ProductVersion", "1.0.0.0\0"  #產品版本
			END
		END
		BLOCK "VarFileInfo"
		BEGIN
			VALUE "Translation", 0x0409, 1200
		END
	END
/* End of Version info */

相關文章