//这是一个webservice

C#下实现在线升级_服务器

C#下实现在线升级_服务器private AppUpdate.UpdateServ UpdateSvr;

C#下实现在线升级_服务器

C#下实现在线升级_服务器

C#下实现在线升级_服务器private void button1_Click(object sender, System.EventArgs e)

C#下实现在线升级_xml_06C#下实现在线升级_服务器_07C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09 

C#下实现在线升级_xml_09if(LinkWebServices()==true)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09this.label1.Text="连接服务器C#下实现在线升级_.net_08C#下实现在线升级_.net_08. PASS";

C#下实现在线升级_xml_09

C#下实现在线升级_xml_09if(CheckVer()==true)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09this.label2.Text="检查最新版本并下载C#下实现在线升级_.net_08C#下实现在线升级_.net_08.PASS";

C#下实现在线升级_xml_09 

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09else

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09this.label2.Text="检查最新版本并下载C#下实现在线升级_.net_08C#下实现在线升级_.net_08.FAIL";

C#下实现在线升级_版本号_26}

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09else

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09this.label1.Text="连接服务器C#下实现在线升级_.net_08C#下实现在线升级_.net_08.FAIL";

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_44}

C#下实现在线升级_服务器

C#下实现在线升级_服务器//这是用来与升级服务器建立连接

C#下实现在线升级_服务器private bool LinkWebServices()

C#下实现在线升级_xml_06C#下实现在线升级_服务器_07C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09try

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09UpdateSvr=new UpdateServ();

C#下实现在线升级_xml_09return true;

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09catch

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09return false;

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_44}

C#下实现在线升级_服务器

C#下实现在线升级_服务器//调用webservice用来检查是不是有最新的版本

C#下实现在线升级_服务器private bool CheckVer()

C#下实现在线升级_xml_06C#下实现在线升级_服务器_07C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09string path =Application.StartupPath;

C#下实现在线升级_xml_09try

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09VersionCheck(path);

C#下实现在线升级_xml_09return true;

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09catch(Exception ex)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09MessageBox.Show(ex.ToString());

C#下实现在线升级_xml_09return false;

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_44}

C#下实现在线升级_服务器

C#下实现在线升级_服务器private void VersionCheck(string desPath)

C#下实现在线升级_xml_06C#下实现在线升级_服务器_07C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09try

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_新版本_12C#下实现在线升级_新版本_11查看文件和目录#region 查看文件和目录

C#下实现在线升级_xml_09if(!desPath.EndsWith(@"\"))

C#下实现在线升级_xml_09desPath += @"\";

C#下实现在线升级_xml_09

C#下实现在线升级_xml_09if(!System.IO.Directory.Exists(desPath))

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09System.IO.Directory.CreateDirectory(desPath);

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09

C#下实现在线升级_xml_09string tempPath = desPath + @"tempDesPathCache\";

C#下实现在线升级_xml_09

C#下实现在线升级_xml_09if(System.IO.Directory.Exists(tempPath))

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09System.IO.Directory.Delete(tempPath,true);

C#下实现在线升级_xml_09System.IO.Directory.CreateDirectory(tempPath);

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09else

C#下实现在线升级_xml_09System.IO.Directory.CreateDirectory(tempPath);

C#下实现在线升级_xml_09

C#下实现在线升级_xml_09if(!System.IO.File.Exists(desPath + "UpdateConfig.xml"))

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09System.Xml.XmlDocument updateConfig = new System.Xml.XmlDocument();

C#下实现在线升级_xml_09updateConfig.LoadXml(@"<root></root>");

C#下实现在线升级_xml_09updateConfig.Save(desPath + "UpdateConfig.xml");

C#下实现在线升级_版本号_26}

C#下实现在线升级_版本号_26#endregion

C#下实现在线升级_xml_09

C#下实现在线升级_xml_09

C#下实现在线升级_xml_09System.Xml.XmlDocument serverXmlDoc = UpdateSvr.AppUpdateVertion();

C#下实现在线升级_xml_09System.Xml.XmlDocument localXmlDoc = new System.Xml.XmlDocument();

C#下实现在线升级_xml_09localXmlDoc.Load(desPath + "UpdateConfig.xml");

C#下实现在线升级_xml_09bool newVersionExist = false;

C#下实现在线升级_xml_09bool moduleExist = false;

C#下实现在线升级_xml_09System.Xml.XmlNode serverNode0 = serverXmlDoc.ChildNodes[0];

C#下实现在线升级_xml_09System.Xml.XmlNode localNode0 = localXmlDoc.ChildNodes[0];

C#下实现在线升级_xml_09foreach(System.Xml.XmlNode serverNode in serverNode0)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09moduleExist = false;

C#下实现在线升级_xml_09foreach(System.Xml.XmlNode localNode in localNode0)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09//找到对应模块

C#下实现在线升级_xml_09if(localNode.ChildNodes[0].InnerText == serverNode.ChildNodes[0].InnerText)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09moduleExist = true;

C#下实现在线升级_xml_09//版本号判断

C#下实现在线升级_xml_09if(localNode.ChildNodes[1].InnerText.CompareTo(serverNode.ChildNodes[1].InnerText) < 0)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09newVersionExist = true;

C#下实现在线升级_xml_09if(System.Configuration.ConfigurationSettings.AppSettings["NetStyle"].ToString()=="internet")

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09DownloadFile(serverNode.ChildNodes[2].InnerText,tempPath + serverNode.ChildNodes[0].InnerText);

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09else

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09DownloadFile(serverNode.ChildNodes[3].InnerText,tempPath + serverNode.ChildNodes[0].InnerText);

C#下实现在线升级_版本号_26}

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09break;

C#下实现在线升级_版本号_26}

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09//没找到对应模块

C#下实现在线升级_xml_09if(false == moduleExist)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09

C#下实现在线升级_xml_09if(System.Configuration.ConfigurationSettings.AppSettings["NetStyle"].ToString()=="internet")

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09DownloadFile(serverNode.ChildNodes[2].InnerText,tempPath + serverNode.ChildNodes[0].InnerText);

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09else

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09DownloadFile(serverNode.ChildNodes[3].InnerText,tempPath + serverNode.ChildNodes[0].InnerText);

C#下实现在线升级_版本号_26}

C#下实现在线升级_版本号_26}

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09//写入新UpdateConfig.xml升级完毕后替换

C#下实现在线升级_xml_09if(newVersionExist)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09serverXmlDoc.Save(tempPath + "UpdateConfig.xml");

C#下实现在线升级_xml_09if(DialogResult.Yes == MessageBox.Show("有新版本,是否更新?","提示",MessageBoxButtons.YesNo))

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09string[] dirs = System.IO.Directory.GetFiles(tempPath, "*.*");

C#下实现在线升级_xml_09string fileName;

C#下实现在线升级_xml_09foreach (string dir in dirs)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09fileName = ((dir.Split(Convert.ToChar(@"\")))[dir.Split(Convert.ToChar(@"\")).Length - 1]);

C#下实现在线升级_xml_09if(System.IO.File.Exists(desPath + fileName))

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09//TODO:可以支持备份以前版本

C#下实现在线升级_xml_09System.IO.File.Delete(desPath + fileName);

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09//TODO:如果系统正在运行,您得停止系统,至于如何停止,也许可以使用System.Diagnostics.Process

C#下实现在线升级_xml_09System.IO.File.Move(dir,desPath + fileName);

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09MessageBox.Show("升级完毕");

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09else

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09//TODO:可以支持重新提示升级

C#下实现在线升级_版本号_26}

C#下实现在线升级_版本号_26}

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09catch(Exception ex)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09throw new Exception("升级失败,原因是:" + ex.Message,ex);

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_44}

C#下实现在线升级_服务器

C#下实现在线升级_服务器//下载最新的文件

C#下实现在线升级_服务器

C#下实现在线升级_服务器private void DownloadFile(string source,string fileName)

C#下实现在线升级_xml_06C#下实现在线升级_服务器_07C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09try

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09System.Net.WebClient myWebClient = new System.Net.WebClient();

C#下实现在线升级_xml_09myWebClient.DownloadFile(source,fileName);

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_09catch(Exception ex)

C#下实现在线升级_新版本_11C#下实现在线升级_新版本_12C#下实现在线升级_.net_08{

C#下实现在线升级_xml_09throw new Exception("下载失败,原因是:" + ex.Message,ex);

C#下实现在线升级_版本号_26}

C#下实现在线升级_xml_44}