小编H. *_*ock的帖子

如何阻止Visual Studio 2015进行硬编码版本控制

我目前正在开发一个可执行的C++ VS2015项目.

我有一个文件version.h,它只是定义了一堆数字.

#define VERSION_MAJOR               3
#define VERSION_MINOR               0
#define VERSION_REVISION            0
#define VERSION_BUILD               2
#define VER_FILE_VERSION            VERSION_MAJOR, VERSION_MINOR, VERSION_REVISION, VERSION_BUILD
...
Run Code Online (Sandbox Code Playgroud)

version.h用于项目的.rc文件中,以定义可执行文件的版本信息.

.rc文件看起来像

#include "resource.h"
#include "version.h"
...
VS_VERSION_INFO VERSIONINFO
 FILEVERSION VER_FILE_VERSION
 ...
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,每次添加资源以修改resource.h时,Visual Studio 2015似乎都会删除.rc文件中的#include"version.h",而是硬编码"version"中的所有值. H".

示例.rc文件的问题

#include "resource.h"
...
VS_VERSION_INFO VERSIONINFO
 FILEVERSION 3,0,0,2
 ...
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,如何阻止VS2015这样做呢?

visual-studio visual-c++ visual-studio-2015

6
推荐指数
1
解决办法
939
查看次数