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

#if defined(UNDER_CE)
#include <winbase.h>
#else
#include <winver.h>
#endif

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 "080404b0"
            BEGIN
                VALUE "CompanyName", "BeiJing XXXX Co., Ltd."
                VALUE "FileDescription", "Industrial Control System"
                VALUE "FileVersion", "1.0.0.0"
                VALUE "InternalName", "Qt Studio.exe"
                VALUE "LegalCopyright", "Copyright (C)2001-2013"
                VALUE "OriginalFilename", "Qt Studio.exe"
                VALUE "ProductName", "Qt Studio"
                VALUE "ProductVersion", "1.0.0.0"
            END
        END
        BLOCK "VarFileInfo"
        BEGIN
            VALUE "Translation", 0x804, 1200
        END
    END

然后将pro文件的RC_FILE = <工程名>.rc,如此一来编译生成的程序就会含有版本信息。

http://blog.csdn.net/libaineu2004/article/details/17362777

---------------------------------------------------------------------------------------------------

1、添加resource.rc文件到项目
IDI_ICON1 ICON DISCARDABLE "app.ico"

#include
#include "version.h"

VS_VERSION_INFO VERSIONINFO
FILEVERSION VER_FILEVERSION
PRODUCTVERSION VER_PRODUCTVERSION
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904E4"
BEGIN
VALUE "CompanyName", VER_COMPANYNAME_STR
VALUE "FileDescription", VER_FILEDESCRIPTION_STR
VALUE "FileVersion", VER_FILEVERSION_STR
VALUE "InternalName", VER_INTERNALNAME_STR
VALUE "LegalCopyright", VER_LEGALCOPYRIGHT_STR
VALUE "LegalTrademarks1", VER_LEGALTRADEMARKS1_STR
VALUE "LegalTrademarks2", VER_LEGALTRADEMARKS2_STR
VALUE "OriginalFilename", VER_ORIGINALFILENAME_STR
VALUE "ProductName", VER_PRODUCTNAME_STR
VALUE "ProductVersion", VER_PRODUCTVERSION_STR
END
END

BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x409, 1252
END
END
同时需要添加一个名为version.h的头文件:
#ifndef VERSION_H
#define VERSION_H

#define VER_FILEVERSION 1,0,0,0 //文件版本
#define VER_FILEVERSION_STR "1.0.0.0\0"

#define VER_PRODUCTVERSION 1,0,0,0
#define VER_PRODUCTVERSION_STR "1.0\0" //产品版本

#define VER_COMPANYNAME_STR "Digia"
#define VER_FILEDESCRIPTION_STR "Qt" //文件说明
#define VER_INTERNALNAME_STR "Qt"
#define VER_LEGALCOPYRIGHT_STR "Copyright 2008-2015 Digia Plc" //版权
#define VER_LEGALTRADEMARKS1_STR "All rights reserved"
#define VER_LEGALTRADEMARKS2_STR VER_LEGALTRADEMARKS1_STR
#define VER_ORIGINALFILENAME_STR "Qt.exe" //原始文件名
#define VER_PRODUCTNAME_STR "Qt" //产品名称

#define VER_COMPANYDOMAIN_STR "example.org"

#endif //VERSION_H
2.配置到项目
在pro中添加

RC_FILE= resource.rc
这样,程序的信息就设置成功了。。。

http://blog.sina.com.cn/s/blog_a6fb6cc90102vqf0.html

给Qt生成的exe执行程序添加版本信息的更多相关文章

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

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

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

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

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

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

  4. QT生成的exe在其他电脑打开

    首先说一下我的开发的平台:vs2017+QT5.9 我们首先先用release版本来编译一下程序,然后我们得到了一个exe程序但是这个程序是不能脱离你的平台,甚至是不能脱离你所在的文件夹,这是因为它需 ...

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

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

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

    作者:daodaoliang 时间:2016年7月11日16:12:09 版本:V 0.0.4 邮箱:daodaoliang@yeah.net 0. 环境说明 系统环境: win10 64位 Qt环境 ...

  7. VC++ 获取exe或者dll版本信息

    #include <iostream> #include <atlstr.h> #pragma comment(lib,"version.lib") CSt ...

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

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

  9. 使用exe4j将java项目打成exe执行程序

    最近用Java写了一个小工具,想将它达成exe执行文件,到时候直接放某个目录下,一执行就能跑啦. 用到的工具: 1.写好的项目:可以是java项目,也可以是java web项目 2.能够打jar的工具 ...

随机推荐

  1. cf509B Painting Pebbles

    B. Painting Pebbles time limit per test 1 second memory limit per test 256 megabytes input standard ...

  2. 远程连接mysql

    win系统下,连接别人的mysql或者让别人链接自己的mysql: 打开命令行cmd 进入mysql: mysql -u root -p mysql>use mysql;  mysql>s ...

  3. 从此走上一条iOS程序猿不归路。。。

    新的城市,新的生活!前不久刚刚结束了苦逼的面试找工作之旅,期间也小有收货,如今正处年底工作闲暇之余,将前一阵子陆陆续续的总结整理了一下,本人菜鸟程序猿一只,水平有限,本文总结的知识不算深入,比较浅显, ...

  4. 关于bootstrap--导航栏

    1.普通导航:class .nav-tabs. <ul class="nav nav-tabs"> <li class="active"> ...

  5. Java[4] Jetty工作原理介绍(转)

    转自:https://www.ibm.com/developerworks/cn/java/j-lo-jetty/ Jetty 的工作原理以及与 Tomcat 的比较 Jetty 应该是目前最活跃也是 ...

  6. iOS-网络编程(二)文件上传和断点离线下载

    一. iOS中发送HTTP请求的方案 在iOS中,我们常用发送HTTP请求的方案有苹果原生(自带)NSURLConnection:用法简单,最古老最经典最直接的一种方案 (iOS 9.0弃用)NSUR ...

  7. UE4学习笔记(三): 为什么使用C++替代UnrealScript?

    原文链接: https://forums.unrealengine.com/showthread.php?2574-Why-C-for-Unreal-4&p=16252&viewful ...

  8. NYOJ 16 矩形嵌套(动态规划)

    矩形嵌套 时间限制: 3000 ms  |  内存限制: 65535 KB 难度: 4   描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽.矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅 ...

  9. response和request

    请求响应流程图 response response是用来向客户端响应的对象! 需要回忆一下http响应内容: l  首行:状态码 l  响应头: 1头1值,1头多值: l  响应体(正文):html ...

  10. jquery之图片上传

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...