1. 作者:daodaoliang
  2. 时间:201671116:12:09
  3. 版本:V 0.0.4
  4. 邮箱:daodaoliang@yeah.net

0. 环境说明

  • 系统环境: win10 64位
  • Qt环境: Qt-lib 5.6.0
  • QCreat0r 3.6.1

1. 使用.rc文件

1.1 在工程项目下创建 .rc 文件

例如 version.rc:

  1. # if defined(UNDER_CE)
  2. # include <winbase.h>
  3. # else
  4. # include <windows.h>
  5. # endif
  6. VS_VERSION_INFO VERSIONINFO
  7. FILEVERSION 1,0,2,0
  8. PRODUCTVERSION 1,0,2,0
  9. FILEFLAGSMASK 0x3fL
  10. #ifdef _DEBUG
  11. FILEFLAGS VS_FF_DEBUG
  12. #else
  13. FILEFLAGS 0x0L
  14. #endif
  15. FILEOS VOS__WINDOWS32
  16. FILETYPE VFT_DLL
  17. FILESUBTYPE 0x0L
  18. BEGIN
  19. BLOCK "StringFileInfo"
  20. BEGIN
  21. BLOCK "040904b0"
  22. BEGIN
  23. VALUE "CompanyName", "NS\0"
  24. VALUE "FileDescription", "数据库测试类库\0"
  25. VALUE "FileVersion", "1.0.1.0\0"
  26. VALUE "LegalCopyright", "@2016\0"
  27. VALUE "OriginalFilename", "NDBPool1.dll\0"
  28. VALUE "ProductName", "NDBPool\0"
  29. VALUE "ProductVersion", "1.0.1.0\0"
  30. END
  31. END
  32. BLOCK "VarFileInfo"
  33. BEGIN
  34. VALUE "Translation", 0x0409, 1200
  35. END
  36. END
  37. /* End of Version info */

1.2 修改 pro 文件

在项目的工程文件里面添加 RC_FILE += ./version.rc

2. 使用内置变量

  1. VERSION = 1.2.3
  2. QMAKE_TARGET_PRODUCT = 产品名称
  3. QMAKE_TARGET_COMPANY = 公司
  4. QMAKE_TARGET_DESCRIPTION = 文件描述
  5. QMAKE_TARGET_COPYRIGHT = 版权

3. 防坑提示

一定要确保rc文件为GBK的格式,不然会乱码,生成的rc文件默认都是UTF-8格式

http://daodaoliang.com/blog/2016/07/11/Qt%E7%BB%99%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E6%B7%BB%E5%8A%A0%E7%89%88%E6%9C%AC%E4%BF%A1%E6%81%AF.html

Qt给应用程序添加版本信息(对rc文件的设置,可利用QT内置变量)的更多相关文章

  1. 怎么给qt程序添加版本信息

    windows下的可执行文件的属性中有版本这个信息,她含有版本信息,描述,版权等等.对于qt的程序,要含有这样的信息,该怎么办呢?那就如下操作吧:新建***.rc文件,在rc文件填入下的信息 #if ...

  2. 给Delphi程序添加版本信息(EXE和Dll)

    我们在用Delphi编译完程序,准备发布产品时,总希望随产品发布个性信息以标示产品的来源以及开发者等信息,就像windows的程序一样,使我们一看属性就知道他是微软的产品,这些在Delphi中是如何实 ...

  3. 使用pyinstaller 2.1将python打包并添加版本信息和图标

    最近用 wxpython写了一个小的脚本,因为想要发布给没有装python和wxpython的人使用,遂决定使用pyinstaller 2.1进行打包. 其中遇到几个问题: 1,给打包的文件添加图标 ...

  4. 给Qt生成的exe执行程序添加版本信息

    Windows下的.exe可执行文件的属性中有版本这个信息,含有版本信息.描述.版权等.对于qt程序,要含有这样的信息,那就请如下操作:新建<工程名>.rc文件,在rc文件填入下的信息: ...

  5. 与众不同 windows phone (47) - 8.0 其它: 锁屏信息和锁屏背景, 电池状态, 多分辨率, 商店, 内置协议, 快速恢复

    [源码下载] 与众不同 windows phone (47) - 8.0 其它: 锁屏信息和锁屏背景, 电池状态, 多分辨率, 商店, 内置协议, 快速恢复 作者:webabcd 介绍与众不同 win ...

  6. 如何给 Inno Setup 生成的安装包添加版本信息

    使用 Inno 已有的函数 GetFileVersion 获取 EXE 文件的版本 #define ApplicationName 'Application Name' #define Applica ...

  7. 如何给 Visual Studio 的输出程序添加版本信息

    出处:https://stackoverflow.com/questions/284258/how-do-i-set-the-version-information-for-an-existing-e ...

  8. 【Python】Java程序员学习Python(四)— 内置方法和内置变量

    <假如爱有天意> 当天边那颗星出现,你可知我又开始想念,有多少爱恋只能遥遥相望,就像月光洒向海面,年少的我们曾以为,相爱的人就能到永远,当我们相信情到深处在一起,听不见风中的叹息,谁知道爱 ...

  9. [VC]获取本地程序的版本信息信息

    CString CQwerApp::IS_GetAppVersion(char *AppName) { ////需要加上version.lib在link里 CString AppVersion; // ...

随机推荐

  1. CentOS下Apache的停止和卸载

    昨晚搞到一台全球性价比最高的服务器,折腾一晚上,好不容易把node服务开启了,结果访问不了我的网站!!! 访问我的网站,显示的是一个Apache欢迎页面.我想,是不是像之前那样,80端口没有开放,然后 ...

  2. 在intellij idea 中怎么不用git 解除关联

    展开全部 file ->settings->version control 选中这一栏,右边有个 点红色减号,就解除了,然后去项目目录下删除.git这个文件夹,你可以不删除,为了以后继续关 ...

  3. C++基础之字符数组和字符串

    无意中发现了一个非常有意思的技术类型小品文系列,通过大牛指导菜鸟的方式,解说讲C++知识,有的非常基础却是开发中easy忽略的地方. [Elminster的专栏] http://blog.csdn.n ...

  4. mongodb 批量更新 数组的键操作的文件

    persons该文件的数据如下面的: > db.persons.find() { "_id" : 2, "name" : 2 } { "_id& ...

  5. WPF的逻辑树与视觉树(1)基本概念

    原文:WPF的逻辑树与视觉树(1)基本概念     一.摘要 逻辑树与视觉树属于WPF的基本概念,学过WPF或者Silverlight的朋友一定会对其有所耳闻,这篇文章将来探讨逻辑树与视觉树的特质以及 ...

  6. 第一次react-native项目实践要点总结 good

    今天完成了我的第一个react-native项目的封包,当然其间各种环境各种坑,同时,成就感也是满满的.这里总结一下使用react-native的一些入门级重要点(不涉及环境).注意:阅读需要语法基础 ...

  7. 比较实时分布式搜索引擎(senseidb、Solr、elasticsearch)

    1.它们是基于lucene的. 2.它们分布:sensedb它是multi-write;Solr的shards它是master-slave状态.基于pull策略:elasticsearch的shard ...

  8. 使用MVVM DataTriggers在WPF XAML视图之间切换/Window窗口自适应内容大小并居中

    原文 使用MVVM DataTriggers在WPF XAML视图之间切换 相关文章: http://www.technical-recipes.com/2016/switching-between- ...

  9. Cocos2d-X之LUA注意事项

    「使用计时器」: 计时器函数原型:unsigned int scheduleScriptFunc(unsigned int handler, float interval, bool paused) ...

  10. Spring Assert.notNull--IllegalArgumentException

    Exception in thread "main" java.lang.IllegalArgumentException: Source must not be null at ...