鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > .net技术 > winform编程 > >

Winform(C#.NET)自动更新组件的使用及部分功能实现(一点改进功能)

来源:互联网 作者:佚名 时间:2013-12-28 10:44
接前两篇继续: Winform(C#.NET)自动更新组件的使用及部分功能实现 Winform(C#.NET)自动更新组件的使用及部分功能实现(续) 借鉴文章: 现象: 由于dll文件比较多,再加之变更比较频繁,而每次点击createxmltools都会重新生成不同的version, 而实际上文

接前两篇继续:

Winform(C#.NET)自动更新组件的使用及部分功能实现

Winform(C#.NET)自动更新组件的使用及部分功能实现(续)

借鉴文章:

现象:

由于dll文件比较多,再加之变更比较频繁,而每次点击createxmltools都会重新生成不同的version,

而实际上文件并未发生变化,,导致重复更新,浪费资源。

解决方法:

根据文件的信息生成一个哈希值,通过比较哈希值来判断文件是否进行了修改。

主要使用类:MD5CryptoServiceProvider

类的注释:使用加密服务提供程序 (CSP) 提供的实现,计算输入数据的 System.Security.Cryptography.MD5 哈希值。

md5加密文件为hashcode,看文件是否真的有变化 MD5(string fileName) { string temp = ""; FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read); MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); byte[] md5byte = md5.ComputeHash(fs); int i, j; foreach (byte b in md5byte) { i = Convert.ToInt32(b); j = i >> 4; temp = temp + Convert.ToString(j, 16); j = ((i << 4) & 0x00ff) >> 4; temp = temp + Convert.ToString(j, 16); } return temp; }

网友评论
<