news 2026/8/3 19:04:01

获取使用ClickOnce部署的应用程序的版本号

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
获取使用ClickOnce部署的应用程序的版本号

引子

在编写使用ClickOnce部署的应用程序时,需要在程序的标题栏、软件变更记录、软件关于等页面读取显示当前的版本号。

之前很傻瓜的做法就是在Resource中维护一个string值,在使用到的地方读取,有更新修改Resource即可。

其实这样做也有一个好处,就是自己可以控制需要显示的版本号,版本信息显示到Build即可,而可能不需要显示到Revision。

ClickOnce的版本值

这样每次修改都很麻烦,当不需要去控制显示的版本值时,直接读取Publish填写的版本值即可。

下面的代码即是读取ClickOnce版本值的方法。

//获取Publish的版本privateVersion GetRunningVersion() {try{returnSystem.Deployment.Application.ApplicationDeployment.CurrentDeployment.CurrentVersion; }catch{returnAssembly.GetExecutingAssembly().GetName().Version; } }

这里需要注意的是,当在本地调试时,获取到的是Assembly中的版本值,即如下面在项目属性页面中设置的值。

而当用户使用ClickOnce安装后,读取到的即是在Publish前设置的值。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/3 19:02:21

VSCode 必装的 10 个高效开发插件

本文介绍了目前前端开发最受欢迎的开发工具 VSCode 必装的 10 个开发插件,用于大大提高软件开发的效率。 VSCode 的基本使用可以参考我的原创视频教程「VSCode 高效开发必装插件」。 VSCode(Visual Studio Code)是由微软研发的一款免费、开源…

作者头像 李华
网站建设 2026/8/3 19:01:17

Visual C++ MFC序列化实战:从原理到绘图应用开发

1. 项目概述:为什么我们需要序列化? 在桌面应用开发,尤其是使用Visual C进行Windows原生程序开发时,数据持久化是一个绕不开的核心话题。想象一下,你花了一下午时间在绘图软件里创作了一幅作品,或者在一个财…

作者头像 李华
网站建设 2026/8/3 19:00:23

华为OD机试免单统计题解:哈希表应用与多语言实现详解

1. 项目概述:从一道题看华为OD机试的“套路”最近在帮几个准备华为OD机试的朋友做模拟辅导,发现“免单统计”这道题出现的频率相当高,几乎成了必刷的经典题目之一。它本身难度适中,但非常考验候选人对基础数据结构、字符串处理、逻…

作者头像 李华
网站建设 2026/8/3 19:00:03

Webpack 2 视频教程 012 - 理解Webpack 中的 CSS 作用域与 CSS Modules

原文发表于我的技术博客 这是我免费发布的高质量超清「Webpack 2 视频教程」。 Webpack 作为目前前端开发必备的框架,Webpack 发布了 2.0 版本,此视频就是基于 2.0 的版本讲解的。 这个基本就是目前国内最好的 Webpack 2.0 最好的学习视频了,…

作者头像 李华
网站建设 2026/8/3 18:59:15

【C++】面向对象三大特性之多态的详细解析(一)

前言:面向对象的三大特性分别是封装、继承和多态。多态并不是孤立存在的,它需要建立在继承关系之上,因此在继续认识多态之前,需要先把基类与派生类之间的关系弄清楚。本篇先介绍继承的基本使用、基类与派生类之间的转换、继承中的…

作者头像 李华
网站建设 2026/8/3 18:57:03

奥维昔巴特Odevixibat获FDA批准:进行性家族性肝内胆汁淤积症和Alagille综合征胆汁淤积性瘙痒的非全身性治疗

进行性家族性肝内胆汁淤积症是一组罕见的遗传性肝病,由胆汁分泌相关的基因突变引起,导致胆汁在肝细胞内淤积,引发严重的瘙痒、黄疸和进行性肝纤维化。Alagille综合征则是另一种累及多系统的遗传性疾病,肝脏表现以胆汁淤积和瘙痒为…

作者头像 李华