Qt程式版本號之rc檔案
阿新 • • 發佈:2019-01-10
釋出出去的win32 應用程式,可以設定版本號,滑鼠右鍵exe檔案,屬性中檢視,像這樣:
那麼問題來了,怎麼做到的?
因為只有win32平臺才有這個東西,所以qt沒有提供相關的介面。只有用其他辦法了。其中比較簡單的辦法就是:
使用.rc檔案給win32平臺的程式增加版本等資訊。 但是,經常會發布出去的除了exe和dll,還有lib,再但是!貌似lib檔案不能有版本資訊。反正我沒找到辦法。那什麼是.rc檔案? 摘要:開發windows平臺應用程式管理資源的檔案。.rc檔案是管理程式icon、滑鼠圖片、等資源的指令碼,會被編譯和連結到exe或dll檔案。編譯這個rc檔案要使用RC (The RC Command Line),編譯出來是.res檔案
在.pro裡指定RC_FILE = .rc檔案的路徑。像這樣。
還有最後一個問題, .rc檔案的語法啥樣的?怎麼寫? 也可以看看版本相關的變數和官方例子:比如FileVersion、ProductName、ProductVersion等等。
#if defined(UNDER_CE) #include #else #include #endif VS_VERSION_INFO VERSIONINFO FILEVERSION 1,4,1,12 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 "080404b0"//Simplified Chinese, Unicode BEGIN VALUE "FileDescription", "MyVersion" VALUE "LegalCopyright", "Copyright (C) 2017-2022" VALUE "OriginalFilename", "" VALUE "ProductName", "My Version" VALUE "ProductVersion", "2.4.3.1" END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x804, 1200 //Simplified Chinese, Unicode END END
好了,加了myVersion.rc檔案,重新構建編譯工程,就帶版本資訊啦! 還想知道怎麼在程式中獲得版本資訊嗎?另一篇文章再寫吧!