Programmatically updating FILEVERSION in a MFC app w/SVN revision number(以编程方式更新具有 SVN 修订号的 MFC 应用程序中的 FILEVERSION)
问题描述
如何以编程方式更新 MFC 应用程序中的 FILEVERSION 字符串?我有一个构建过程,用于生成包含给定版本的 SVN rev 的头文件.我正在使用来自 http://www.compuphase.com/svnrev.htm 的 SvnRev 到更新我用来设置 MFC 应用程序标题栏的头文件.现在我想将此#define 用于我的 FILEVERION 信息.
How do I go about programmatically updating the FILEVERSION string in an MFC app? I have a build process that I use to generate a header file which contains the SVN rev for a given release. I'm using SvnRev from http://www.compuphase.com/svnrev.htm to update a header file which I use to set the caption bar of my MFC app. Now I want to use this #define for my FILEVERION info.
最好的方法是什么?
推荐答案
.rc文件可以像.c#include头文件> 文件可以.我有一个自动生成的 version.h 文件,它定义了以下内容:
An .rc file can #include header files just like .c files can. I have an auto-generated version.h file, which defines things like:
#define MY_PRODUCT_VERSION "0.47"
#define MY_PRODUCT_VERSION_NUM 0,47,0,0
然后我只有我的 .rc 文件 #include "version.h" 并使用这些定义.
Then I just have my .rc file #include "version.h" and use those defines.
VS_VERSION_INFO VERSIONINFO
FILEVERSION MY_PRODUCT_VERSION_NUM
PRODUCTVERSION MY_PRODUCT_VERSION_NUM
...
VALUE "FileVersion", MY_PRODUCT_VERSION " "
VALUE "ProductVersion", MY_PRODUCT_VERSION " "
...
我还没有在 MFC 项目中尝试过这种技术.可能需要将您的 VS_VERSION_INFO 资源移动到您的 .rc2 文件(Visual Studio 不会对其进行编辑).
I haven't tried this technique with an MFC project. It might be necessary to move your VS_VERSION_INFO resource to your .rc2 file (which won't get edited by Visual Studio).
这篇关于以编程方式更新具有 SVN 修订号的 MFC 应用程序中的 FILEVERSION的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:以编程方式更新具有 SVN 修订号的 MFC 应用程序中的 FILEVERSION
基础教程推荐
- GDB 显示调用堆栈上函数地址的当前编译二进制文 2022-09-05
- 为什么 RegOpenKeyEx() 在 Vista 64 位上返回错误代码 2021-01-01
- 如果我为无符号变量分配负值会发生什么? 2022-01-01
- 初始化列表*参数*评估顺序 2021-01-01
- 我应该对 C++ 中的成员变量和函数参数使用相同的名称吗? 2021-01-01
- CString 到 char* 2021-01-01
- 通过引用传递 C++ 迭代器有什么问题? 2022-01-01
- 非静态 const 成员,不能使用默认赋值运算符 2022-10-09
- 为什么 typeid.name() 使用 GCC 返回奇怪的字符以及如 2022-09-16
- 为什么派生模板类不能访问基模板类的标识符? 2021-01-01
