通常软件自动更新时,需要比较新版本与旧版本的版本号,如果新文件的版本号比旧文件高,就替换旧文件。(版本号一般可以在Visual Studio的程序信息里定义)
如何取得exe程序的版本号呢?可以用以下方式实现。

1 using System; 2 using System.Collections.Generic; 3 using System.Text; 4 //添加的引用 5 using System.Diagnostics; 6 7 namespace 获到文件版本 8 { 9 class Program 10 { 11 static void Main(string[] args) 12 { 13 14 15 string FileVersions = ""; 16 string path = "d:\\code\\shost.exe"; 17 18 try 19 { 20 FileVersionInfo file1 = System.Diagnostics.FileVersionInfo.GetVersionInfo(path); 21 //版本号显示为“主版本号.次版本号.内部版本号.专用部件号”。 22 FileVersions = String.Format("{0}.{1}.{2}.{3}", file1.FileMajorPart, file1.FileMinorPart, file1.FileBuildPart, file1.FilePrivatePart); 23 24 } 25 catch (Exception) 26 { 27 FileVersions = ""; 28 } 29 30 Console.WriteLine(FileVersions); 31 32 Console.ReadLine(); 33 } 34 } 35 }