QT程序中增加版权信息及图标的方法

好记性不如乱笔头,记下来总是好的。。。
回复
BG6RSH
帖子: 132
注册时间: 周日 6月 23, 2019 12:00 pm

QT程序中增加版权信息及图标的方法

帖子 BG6RSH »

首先创建一个 .rc文件,然后在QT工程文件.pro中加入该文件的引用。
  1. RC_FILE += version.rc
version.rc文件如下,可根据不同工程修改相关变量,可以作为模板文件使用。
  1. IDI_ICON1 ICON DISCARDABLE "app.ico"    /* 可执行文件图标 */
  2.  
  3. #include <windows.h>
  4.  
  5. /*
  6. Alpha:测试版,一般为软件项目团队内部测试,不对外公开;
  7. Beta:测试版,通过内部测试的版本,一般会通过特定方式对外公开测试;
  8. Candidate:候选版,指通过公测,可能最后做为正式发布的版本;
  9. Delay:延后版,表示不清楚是什么状况就被跳票的版本,一般不公开;
  10. Erased:擦除版,表示项目某老大又要改需求,软件重置后完成的版本,一般不公开;
  11. Final:最终版,指改需求后完成内部测试,没时间了必须准备发布的版本;
  12. Gan:返修版,音同淦,表示程序员很愤怒,怎么又要改的版本,一般不公开;
  13. Release:发布版,这一版本为正式发布版,也就是我们常用的版本;
  14. Stable:稳定版,一般指修复发布版出现的BUG后,再发布的正式版本。
  15. */
  16. #define VER_FILEVERSION             0,1,2,0      /*文件的二进制版本号。*/
  17. #define VER_FILEVERSION_STR         "0.12 Release\0"
  18.  
  19. #define VER_PRODUCTVERSION          2024,6,25,0      /*用于分发文件的产品的二进制版本号。*/
  20. #define VER_PRODUCTVERSION_STR      "2024.06.25\0"
  21.  
  22. VS_VERSION_INFO  VERSIONINFO
  23. FILEVERSION          VER_FILEVERSION
  24. PRODUCTVERSION  VER_PRODUCTVERSION
  25. FILEFLAGSMASK     VS_FFI_FILEFLAGSMASK
  26. FILEFLAGS             VS_FF_PRERELEASE
  27. FILEOS                  VOS__WINDOWS32
  28. FILETYPE               VFT_APP
  29. FILESUBTYPE         VFT2_UNKNOWN
  30. BEGIN
  31.     BLOCK "StringFileInfo"
  32.     BEGIN
  33.         BLOCK "080404B0"
  34.         BEGIN
  35.             VALUE "CompanyName",  "*****公司\0"
  36.             VALUE "FileDescription",  "Production Data Monitoring.(Qt 6.6.1)\0"
  37.             VALUE "FileVersion",        VER_FILEVERSION_STR
  38.             VALUE "LegalCopyright",   "Copyright(C) 2024 *****公司\0"
  39.             VALUE "OriginalFilename", "CriticalDataMonitoring.exe\0"
  40.             VALUE "ProductName",      "******数据监控系统\0"
  41.             VALUE "ProductVersion",   VER_PRODUCTVERSION_STR
  42.         END
  43.     END
  44.  
  45.     BLOCK "VarFileInfo"
  46.     BEGIN
  47.         /*以下行只能针对本地化版本进行修改。       */
  48.         /*它由任意数量的WORD组成,WORD对,每对    */
  49.         /*描述一种语言,文件支持的代码页组合。        */
  50.         /*                                  */
  51.         /*例如,一个文件可能具有值“0x409,1252”,表明它      */
  52.         /*在Windows ANSI代码页(1252)中支持英语(0x409)。   */
  53.         VALUE "Translation", 0x804, 1200
  54.     END
  55. END
回复