`
starnc
  • 浏览: 142210 次
  • 性别: Icon_minigender_1
  • 来自: 火星
社区版块
存档分类
最新评论

C#读取exe版本号

    博客分类:
  • .NET
 
阅读更多

 

//通常我们做软件自动更新,需要比较新文件与旧文件的版本号,如果新文件的版本号比旧文件高,就替换旧文件。
//(版本号一般是在Visual Studio的程序信息里定义)如果使用以下的方法:

using System.Reflection;
using System.IO;
...
Assembly currentAssembly = Assembly.LoadFile(currentAssemblyPath);
Assembly updatedAssembly = Assembly.LoadFile(updatedAssemblyPath);
AssemblyName currentAssemblyName = currentAssembly.GetName();
AssemblyName updatedAssemblyName = updatedAssembly.GetName();
// 比较版本号
if (updatedAssemblyName.Version.CompareTo(currentAssemblyName.Version) <= 0)
{
    // 不需要更新
    return;
}

// 更新
File.Copy(updatedAssemblyPath, currentAssemblyPath, true);
//旧版本被加载了,下面的File.Copy就无法替换旧文件。
//不用加载EXE就可以判断该EXE版本的方法如下:

using System.Reflection;
using System.IO;
...
AssemblyName currentAssemblyName = AssemblyName.GetAssemblyName(currentAssemblyPath);
AssemblyName updatedAssemblyName = AssemblyName.GetAssemblyName(updatedAssemblyPath);
// 比较版本
if (updatedAssemblyName.Version.CompareTo(currentAssemblyName.Version) <= 0)
{
    // 不需要更新
    return;
}
// 更新
File.Copy(updatedAssemblyPath, currentAssemblyPath, true);
分享到:
评论

相关推荐

    获取exe和dll文件的版本号

    一个做测试的朋友让我帮他写一个获取指定文件夹下面(包括里面的子文件夹)所有DLL以及EXE文件的版本号的程序,这里分享出来,希望能给你一些帮助.

    C# .NET写的基于WinIO映射内存读取本地BIOS版本(含源码)

    C#通过WinIO读取BIOS的版本号 可用于工控行业的测试 程序包里有自己封装好的函数库,里面有对WinIO的操作,使用起来比较简单 这支程序可直接使用,用于工厂测试产品烧录的BIOS版本号 提供了完整的源码,使用时加个...

    c# 获取程序集版本号

    c# 获取程序集版本号,自动增加“内部版本号”和“修订号

    C# 开发的通用升级更新程序

    2、通过HTTP请求访问 获取最新程序版本号与 下载地址 3、比对当前程序版本是否一致 4、不一致则下载 对应地址的zip压缩包。(必须是zip格式,主程序exe 必须在根目录) 5、关闭主程序 解压当zip 文件到跟新程序exe同...

    对组态王OPC服务器值的读取c#版本

    /// 为用户写入的其要取的变量的索引号,其为ReadItemNo返回的范围内的某个数&lt;/param&gt; /// 返回错误码,见附录&lt;/returns&gt; /// &lt;/summary&gt; [DllImport("kingvewcliend.dll")] //[SecurityPermission...

    取得系统的版本号

    取得系统的版本号 取得系统的版本 取得系统的版本号 取得系统的版本号

    C#解析ipa,读取App名称、版本信息、开发者账号等

    C#解析ipa,读取App名称、版本信息、开发者账号等 完整demo,可直接运行。 C#解析ios安装包。C#解析ios安装包。C#解析ios安装包。

    C#实现搜索出本机安装的AutoCAD

    C#实现搜索出本机安装的AutoCAD并实现.net程序随CAD启动自动加载

    C# 读取XML文件内容的不同东西

    可以读取XML文件中节点的值,读取节点,读取XML的版本号等功能,专门用了一个实例进行说明,读取不同的内容。大家可以下载下来看看!

    C#编程读取文档Doc、Docx及Pdf内容的方法

    本文实例讲述了C#编程读取文档Doc、Docx及Pdf内容的方法。分享给大家供大家参考。具体分析如下: Doc文档:Microsoft Word 14.0 Object Library (GAC对象,调用前需要安装word。安装的word版本不同,COM的版本号也会...

    C# 获取U盘ID序列号及U盘信息

    可以获得U盘名称,制造商ID号 版本号 U盘序列号及容量 Form1.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; ...

    C#编写的深圳明华URF-R330读写器Demo M1卡读写程序代码示例

    C#非接触IC卡M1卡读写调试源代码,自己编写的明华URF-R330读写器 M1卡的读写,官方提供的demo很混乱,并且没有C#版本的,第一次测试调试都很难搞明白,我四处收集资料改写代码写出这个C#版的Demo,我这个是根据他们...

    c#多线程抓取网页内容

    相信大家都有用过网际快车等下载资源的经历,它里面是可以设置线程数的(近年版本默认是10,曾经默认是5)。它会将文件分成与线程数相同的部分,然后每个线程下载自己的那一部分,这样下载效率就有可能提高。相信...

    C#获取系统当前IE版本号

    本文实例为大家分享了C#获取系统当前IE版本号的具体代码,供大家参考,具体内容如下 1. 注册表中,IE的位置: 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Internet Explorer 2. 通过注册表读取IE...

    语言为C#编写,适用于“大智慧新一代 Level-2

    语言为C#编写,适用于“大智慧新一代 Level-2 V3.03.08.0801 ”的版本。估计分析家6.0的版本也适用,暂没测试过。  对于一些有独特的行情分析方法并且现有的股票分析软件又不能满足...功能:实型,返回组件当前版本号

    C#简单的天气预报程

    获取网上jason数据/xml数据 解析并读取 城市列表动态绑定 获取未来3天天气数据 时间日期显示 图像显示 wpf

    C#开发经验技巧宝典

    0720 如何获得操作系统版本号 446 17.2 获取计算机硬件信息 446 0721 如何获取CPU编号 446 0722 如何获取显示设备的PNPDeviceID 447 0723 如何获取声音设备的PNPDeviceID 447 0724 如何获取硬盘编号 447...

    C#开发实例大全(基础卷).软件开发技术联盟(带详细书签) PDF 下载

    《C#开发实例大全(基础卷)》筛选、汇集了C#开发从基础知识到高级应用各个层面约600个实例及源代码,每个实例都按实例说明、关键技术、设计过程、详尽注释、秘笈心法的顺序进行了分析解读。全书分6篇共25章,主要...

Global site tag (gtag.js) - Google Analytics