更新项目版本号时,需要与 rc 文件的 version 同步,比较方便的方法是直接从 rc 文件中获取版本号,并应用到程序中

// 删除日志检查
bool GetVersion() {
// get the filename of the executable containing the version resource
wchar_t filename[MAX_PATH + 1];
if (GetModuleFileName(nullptr, filename, MAX_PATH) == 0) {
return false;
} // allocate a block of memory for the version info
DWORD dummy;
DWORD size = GetFileVersionInfoSize(filename, &dummy);
if (size == 0) {
return false;
} auto data = std::make_unique<BYTE[]>(size);
// load the version info
if (!GetFileVersionInfo(filename, 0, size, &data[0])) {
return false;
} uint len = 0;
VS_FIXEDFILEINFO* fixed_file_info = 0;
if (!VerQueryValue(&data[0], TEXT("\\"),
reinterpret_cast<void**>(&fixed_file_info), &len)) {
return false;
} // version 为版本号
// 需要窄字节的,可以另外转
std::wstring version;
base::SStringPrintf(&version, L"%u.%u.%u",
HIWORD(fixed_file_info->dwProductVersionMS),
LOWORD(fixed_file_info->dwProductVersionMS),
HIWORD(fixed_file_info->dwProductVersionLS)); return true;
}

  

从 vs 的 rc 文件中获取版本号的更多相关文章

  1. JAVA文件中获取路径及WEB应用程序获取路径方法

    JAVA文件中获取路径及WEB应用程序获取路径方法 1. 基本概念的理解 `绝对路径`:你应用上的文件或目录在硬盘上真正的路径,如:URL.物理路径 例如: c:/xyz/test.txt代表了tes ...

  2. 从BIRT报表文件中获取页面设置信息(页边距、纸张大小、输出方向)的方法

     从BIRT报表文件中获取页面设置信息(页边距.纸张大小.输出方向)的方法    报表打印时,尤其是套打的报表,页面设置信息非常重要,比如页边距,纸张大小,输出方向等,而且每个报表的相关参数有可能不同 ...

  3. js文件中获取${pageContext.request.contextPath}

    一般从 JSP文件中,可以直接使用 ${pageContext.request.contextPath}非常方便的获得当前页面的路径,用来处理被 Apache2代理之后出现 URL变化的问题,比如增加 ...

  4. 从PFX文件中获取私钥、公钥证书、公钥

    https://blog.csdn.net/ZuoYanYouYan/article/details/77868584 该类具体功能:根据pfx证书得到私钥.根据私钥字节数组获取私钥对象.根据公钥字节 ...

  5. ASP.NET MVC 中单独的JS文件中获取Controller中设定的值

    1,在Controller中的Action 中将指定值写上.       //       // GET: /Home/       public ActionResult Index()       ...

  6. javascript 在js文件中获取路径

    如果在*.js文件中获取当自己当前的路径是很重要的. 举个例子,如果一个css文件中引用图片,如background-img: url('./Images/bg.png').那么图片的路径,是相对于c ...

  7. init.rc文件中面启动c++程序,通过jni调用java实现

    </pre><p>注:假设是自己的myself.jar包,还要修改例如以下:</p><p>target/product/core_base.mk PRO ...

  8. 如何在 asp.net core 3.x 的 startup.cs 文件中获取注入的服务

    一.前言 从 18 年开始接触 .NET Core 开始,在私底下.工作中也开始慢慢从传统的 mvc 前后端一把梭,开始转向 web api + vue,之前自己有个半成品的 asp.net core ...

  9. java中的文件读取和文件写出:如何从一个文件中获取内容以及如何向一个文件中写入内容

    import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.Fi ...

  10. 从键盘或文件中获取标准输入:read命令

    文件的描述符和重定向 文件描述符是和文件的输入.输出相关联的非负整数,Linux内核(kernel)利用文件描述符(file descriptor)来访问文件.打开现存文件或新建文件时,内核会返回一个 ...

随机推荐

  1. [转帖]TiDB 数据库的调度

    https://docs.pingcap.com/zh/tidb/stable/tidb-scheduling#%E4%BF%A1%E6%81%AF%E6%94%B6%E9%9B%86 PD (Pla ...

  2. [转帖]021系统状态检测命令sosreport

    https://www.cnblogs.com/anyoneofus/p/16467677.html   sosreport命令用于收集系统配置及架构信息并输出诊断文档.

  3. [转帖]CPU缓存行

    https://www.jianshu.com/p/e338b550850f CPU缓存 执行程序是靠运行CPU执行主存中代码,但是CPU和主存的速度差异是非常大的,为了降低这种差距,在架构中使用了C ...

  4. [翻译]-hugePage的简要说明--部分内容

    hugePage的简要说明 本篇文档的主旨给linux内核支持的大页内存做一个简要的概述. 大页内存的实现是建立在大多数现代架构所都支持的多级页大小的特性之上的. 举例: x86架构下大部署CPU 的 ...

  5. Linux运行服务的几种方式

    摘要 1. nohup & 2. screen 3. bg & disown 4. systemd 5. crontab @reboot 背景 最近一直在用linux 想着多总结一下. ...

  6. C# WPF 开发一个 Emoji 表情查看软件

    微软在发布 Windows 11 系统的时候,发布过一个开源的 Emoji 表情 fluentui-emoji .因为我经常需要里面的一些表情图片,在仓库一个个查找特别的不方便,所以我做了一个表情查看 ...

  7. 【小测试】读取*.proto文件,再读取service中method的注释

    想要在proto3中定义service,及其service的method.然后在method后面加上特殊注释,通过这个特殊注释来动态生成代码. 下面是测试代码: import ( "gith ...

  8. ABP-VNext 用户权限管理系统实战05----扩展授权类型(单点登录)

    一.适合场景: 1.我方系统在集成到别人的集成本台时一般是拿别的平台的用户名,在我方系统进行登录 2.我方系统是前后端分离,前端要拿到token 二.解决方案:自定义授权类型 我们知道Identity ...

  9. AsNoTracking()非跟踪数据 查询

    刚开始学习使用EF ,做项目时需要查询数据将数据显示在datagrid中,使用如下方法: query是IQueryable的 在一次看别人写的代码的时候,发现了AsNoTracking()这个方法,并 ...

  10. 华为云DTSE助力车卫士架构升级,探索智能出行行业数字化新路径

    本文分享自华为云社区<华为云DTSE助力车卫士技术架构升级,探索智能出行行业数字化新路径>,作者:HuaweiCloudDeveloper. 毫无疑问,在双碳背景以及先进技术的加持下,智能 ...