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. 亲测有效,解决Can 't connect to local MySQL server through socket '/tmp/mysql.sock '(2) ";

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/hjf161105/article/details/78850658 最近租了一个阿里云云翼服务器,趁 ...

  2. matlab 求解线性规划问题

    线性规划 LP(Linear programming,线性规划)是一种优化方法,在优化问题中目标函数和约束函数均为向量变量的线性函数,LP问题可描述为: minf(x):待最小化的目标函数(如果问题本 ...

  3. 探究Promise的实现

    最终答案在一个类库里,地址 https://github.com/yahoo/ypromise 这个类库也有问题,就是下面这道面试题在IE9里实现不一致,类库里还是用了setTimeout.去年尝试用 ...

  4. Delphi 中的字符串(还解释了shortstring)good

    一.Delphi 2009 之前的字符串(不支持 Unicode): Delphi 2009 之前的字符串分为 3 种:ShortString.AnsiString.WideString. [Shor ...

  5. 如何移除解决方案中的TFS版本控制

    1.清除(删除)项目下的所有版本控制文件,这些文件有:*.vssscc,*.vspscc删除这些版本控制文件比较简单,搜索这些后缀的文件,删除即可. 2.修改项目的解决方案文件:*.sln (1).先 ...

  6. Mechanism for self refresh during C0

    An embodiment may be an apparatus comprising a link coupled with a memory, and circuitry coupled wit ...

  7. 关于undefind

    var undefined = "东方云游"; alert(undefined); // undefined 不一定为undefined ie8(包含ie8)以下会返回 " ...

  8. Android 项目框架功能整理记录

    用来记录自己在项目用到的框架工具等,新人新记录,希望能对你搭建项目有所帮助 常用框架整理 视图绑定注解框架: butterKnife 网络请求框架: OKHttp 图片加载缓存:Gilde 数据格式解 ...

  9. 学习vi和vim编辑(4):高速移动定位

    平时.第一步是编辑文本需要做将光标移动到需要编辑.因此,根据需要,将光标移动到目标数字键来编辑文本的速度在一定程度上. 一篇文章.主要介绍怎样高速移动光标. 依据屏幕来移动: 在一个有几千行文本的文件 ...

  10. Servlet 3.1实践

    Servlet 3.1 新特性详解 参考: IBM developerworks: Servlet 3.0 新特性详解 开涛的博客: Servlet3.1规范(最终版) 关键特性 Asynchroni ...