C# 取自身版本 Ping检测网络 读取网络XML 自动更新 范例

  1. private bool CheckUpdateServerState(string host)  
  2. {  
  3.     try  
  4.     {  
  5.         Ping ping = new Ping();  
  6.         return (ping.Send(host).Status == IPStatus.Success);  
  7.     }  
  8.     catch  
  9.     {  
  10.         return false;  
  11.     }  
  12. }  
  1. private void CheckNewVersion()  
  2. {  
  3.     if (this.CheckUpdateServerState("www.binfensoft.cn"))  
  4.     {  
  5.         Version version = Assembly.GetExecutingAssembly().GetName().Version;  
  6.         try  
  7.         {  
  8.             new WebClient();  
  9.             XmlDocument document = new XmlDocument();  
  10.             document.Load("http://www.binfensoft.cn/js/BatchRenameVersion.xml");  
  11.             Version version2 = new Version(document.SelectSingleNode("/ver/newVer").InnerText);  
  12.             if ((version2 > version) && (MessageBox.Show(string.Format("当前程序版本:{0}\r\n发现有新版本:{1}\r\n新版特性:\r\n{2}\r\n\r\n是否下载?", version.ToString(), version2.ToString(), document.SelectSingleNode("/ver/updateInfo").InnerText), "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes))  
  13.             {  
  14.                 Process.Start(document.SelectSingleNode("/ver/downloadUrl").InnerText);  
  15.             }  
  16.         }  
  17.         catch (Exception)  
  18.         {  
  19.         }  
  20.     }  
  21. }  
  1. <?xml version="1.0" encoding="utf-8" ?>  
  2. <ver>  
  3.   <newVer>3.5</newVer>  
  4.   <downloadUrl>http://www.duote.com/soft/67823.html</downloadUrl>  
  5.   <updateInfo>1、增加换肤功能;  
  6.  2、修正某些电脑运行出错的BUG;    
  7.  3、优化细节;  
  8.   
  9.         2015-12-15</updateInfo>  
  10. </ver>  
shashou47

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: