首页 > 系统相关 >windows文件发布助手

windows文件发布助手

时间:2022-12-18 18:34:10浏览次数:72  
标签:文件 0.1 12 2022 windows 修改 助手 版本

源码获取

1 概述

  • 这是一款用于修改 windows 可执行程序( exe、dll)版本号 和 修改VS安装项目(.vdproj)版本号的小程序。
  • 可执行程序可修改: 文件版本和产品版本
  • 安装项目修改: version 字段

公司内部部分项目沿用,每当升级时,需要手动修改文件版本号和产品版本等信息,再重新编译, 较为繁琐。 更多时候,代码没有修改,仅仅修改版本号。 故开发该助手,用于维护软件后期发布。

2 原理

  • 可执行程序:修改可执行程序中的资源字段值
  • 安装项目:直接读取文件内容,解析后,再写入。 非调用windows官方api修改版本号(已测, 修改后,使用VS再次打开解决方案,可正常编译)

3 开发环境

  • 操作系统: win11
  • Qt: 5.14
  • Visual Studio : 2019
  • VSCode: 1.72: 用于代码编写,调试。

5 代码管理

  • SVN: 5.0.0 。( 本机搭建的服务器, 用于代码管理。 )
  • CMake: 3.25 (支持modern cmake语法的版本都可以)

6 文件夹概述

序号 名称 简介 代码维护方式
1 Common 存放cmake自定义脚本文件
2 EPA 主程序UI源码文件夹 CMAKE
3 OctExeDllVersion 动态库项目源码,EPA调用动态库。OctExeDllVersion作用: 修改可执行文件的文件版本和产品版本 CMAKE

OctExeDllVersion 是基于VS2019的MFC动态库, VS2017 之前的MF动态库与Vs2017及Vs2017之后的MFC动态库项目文件结构不太一样。 需要注意。

7 构建

7.1 构建顺序

  • 因为 EPA 依赖 OctExeDllVersion。 故 须先 构建 OctExeDllVersion, 构建 EPA, 方可成功
  • OctExeDllVersion 提供动态库对应的 cmake-config文件,详见:path/OctExeDllVersion/cmake目录

7.2 Qt设置

  • 打开 EAP/CMakeLists.txt, 将 "\C:/major/development/tools/qt/5.14/install/5.14.2/msvc2015_64" 改为对应的Qt安装路径后 ,再执行构建

8 主程序UI概览

9 功能

  • 自动解析本机的所有版本

  • 更新 可执行程序的文件版本和产品版本; 支持执行处理文件

  • 更新 安装包项目的version字段,可生成项目和执行批处理文件

10 更新日志

2022-12-18 V0.0.0.1

  • 1 增加输出结果控件, 用于提示用户当前操作状态
  • 2 修复删除的BUG(多行删除)
  • 3 增加操作提示:修改版本和生成解决方案
  • 5 完善用户提示
  • 6 增加中文翻译
  • 7 修复获取vs版本信息的按钮一直显示为执行的BUG, 但是 model 和 delegate依然显示英文
  • 8 去掉oct_epa namespace, 并重新添加翻译
  • 9 修复翻译没有显示的问题: 将加载qm放在main.cpp中,解决
  • 10 增加可执行程序分组中,增加选择dll文件
  • 11 增加遗漏的文件
  • 12 EPA/cmake脚本增加拷贝query.exe文件的功能,同时调整vswhere的项目位置

2022-12-17 V0.0.0.1

  • 1 增加获取devenv的功能
  • 2 优化devenv界面的功能
  • 3 将exe和installproject修改版本改为一项一项的执行。而非,先将所有文件版本修改,再执行其他的。
  • 5 修复安装包项目中,执行批处理文件时的process的workingdirectory错误的问题
  • 6 增加结果输出显示区域

2022-12-16 V0.0.0.1

  • 1 新增UI优化
  • 2 代码重构: ATableModel 类
  • 3 安装包项目model和delegate重命名
  • 5 提交本地重命名文件
  • 6 增加关闭前, 将UI信息写入文件, 如果文件不存在,则创建文件
  • 7 删除多余的文件

2022-12-15 V0.0.0.1

  • 1 修改安装包项目没有修改版本号成功的问题
  • 2 重构代码: MVC模式
  • 3 增加批处理文件执行功能
  • 5 增加关闭、创建和打开按钮功能
  • 6 增加标题栏显示当前文件的功能

2022-12-13 V0.0.0.1

  • 1 vdproj项目增加命令预览
  • 2 增加预览batch 命令规则(实测正确)、
  • 3 增加执行batch命令, 修复install project中不显示修订版本列

2022-12-12 V0.0.0.1

  • 1 增加sln文件解析
  • 2 删除delegate文件, 改为 vdprojdelegate文件
  • 3 改为exe修订文件和产品版本
  • 5 删除多余文件
  • 6 增加exeb保存文件的功能

2022-12-09 V0.0.0.1

  • 1 增加解析sln文件
  • 2 增加文件显示tooltip

2022-12-08 V0.0.0.1

  • 1 增加文件版本修改的功能
  • 2 使用VS2019创建动态库修改项目
  • 3 VDproj文件修改类BUG修复:无法修改文件的问题
  • 5 修改文件版本的功能已经基本实现

2022-12-07 V0.0.0.1

  • 1 sqlite读写类将更新接口功能改为先删除在插入
  • 2 优化数据库读写接口名称
  • 3 修复数据库读写类中 写表格数据错误的问题
  • 5 增加exe和dll文件列选择文件的功能
  • 6 配置文件类增加对应的文件map对应关系
  • 7 增加脚本文件选择

2022-12-06 V0.0.0.1

  • 1 增加VS版本选择
  • 2 修改exe dll文件不显示编译器名称
  • 3 修改VCproj显示编译版本名称

2022-12-04 v0.0.0.1

  • 1 增加动态库, 用于读写 exe 版本信息
  • 2 封装文件版本读写类
  • 3 exe版本修改增加版本写入功能
  • 5 版本号统一名称
  • 6 加入数据库文件读写及数据库文件类
  • 7 增加数据库结构: 编译器名
  • 8 增加Vs版本选项,但是内存泄漏
  • 9 没有文件更新, 仅日志文件, 发现:OctExeDllVersion库存在内存泄漏

2022-12-01 V0.0.0.1

  • 1 修复无法显示model的列标题的问题
  • 2 增加 Atableview类
  • 3 模块化UI

标签:文件,0.1,12,2022,windows,修改,助手,版本
From: https://www.cnblogs.com/pandamohist/p/16990725.html

相关文章

  • 学习ASP.NET Core Blazor编程系列十七——文件上传(上)
    学习ASP.NETCoreBlazor编程系列文章之目录学习ASP.NETCoreBlazor编程系列一——综述学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(上)学习A......
  • windows10 netsh wlan命令连接新wifi
    通过修改已存在的profile的ssid和密码来连接新的wifi。1. 查看当前存在的profile(本机连接过的wifi会生成一个profile)netshwlanshowprofilesUserprofiles------......
  • 【MID音频读取和分析】基于matlab的MID音频文件读取和分析
    目录1.软件版本2.理论知识3.核心代码4.操作步骤与仿真结论5.参考文献6.完整源码获得方式1.软件版本matlab2013b2.理论知识这个部分,不涉及什么原理,主要是对MIDI......
  • 二进制文件转Hex和Wav文件转Hex的Java代码
    二进制文件转Hex对于需要将二进制数据写入固件的场景(例如mp3文件),需要将二进制文件表示为byte数组importjava.io.File;importjava.io.FileInputStream;importjav......
  • Windows使用SCP命令
      windows自带scp命令上传文件使用方法:scp源文件路径账户@地址:目的路径 如果是文件夹就换成scp-rscpE:\[email protected]:/home/test 然后......
  • 拼接合并PDF文件
    工具:python,PyPDF2安装PyPDF2:pipinstallPyPDF2待合并文件:合并代码:fromPyPDF2importPdfMergermerger=PdfMerger()#将文件名放入列表files=[(st......
  • WDS服务(windows部署服务)
    WDS的全称为windows部署服务,主要用于大中型网络中的计算机操作系统的批量化部署(批量装系统)​WDS部署服务的主要优势:降低成本,操作简单2、允许基于网络安装windows操作系统......
  • Linux桌面系统解压Windows用户发来的zip压缩包乱码
    现象Linux桌面用户大多数都遇到这个问题,对Windows桌面用户发来的zip压缩包,双击打开或者解压,发现中文文件名和路径都是乱码。通过命令行unzip解压也会得到一样的结果:1......
  • 可执行文件的装载与进程
    装载的两种方式:曾经使用的覆盖装入,现在使用的页映射,都是动态装入,覆盖装入:将模块按照它们之间的依赖关系组织成树状结构。本质上还是想节约内存,将没有依赖的模块可以覆盖在......
  • 离线下载和安装UWP(windows应用商店)软件
    离线下载uwp安装包打开商店,然后搜索您要的应用程序名称,进入应用界面点击分享按钮,在弹出窗口中选择【复制链接】把链接粘贴到:https://store.rg-adguard.net/默认选择的......