C# 實現客戶端程序自動更新


看到一篇不錯的帖子,可能以后會用到,果斷收藏

文章來源 博客園 jenry(雲飛揚) http://www.cnblogs.com/jenry/archive/2006/08/15/477302.html


由於微軟提供的更新程序使用不方便,所以又寫了此程序。此程序是本人一年前所寫的一段程序,當時在開發一個CS版本報價系統,當時由於開發過程倉促,代碼可能有點不是太規范此程序編譯后只有一下AutoUpdate.exe文件與一個配置文件UpdateList.xml,主要通過本地程序與服務端程序文件的版本號來升級與更新本地程序文件。

UpdateList.xml文件內容如下:

<?xml version="1.0" encoding="gb2312"?>

<AutoUpdater>

  <description>Application autoUpdate</description>
  <Updater>
 <Url>http://10.0.5.98/SoftUpdate/</Url>
 <LastUpdateTime>2005-09-05</LastUpdateTime>
  </Updater>
  <Application applicationId="ItemSoft">
    <EntryPoint>ItemSoft.exe</EntryPoint>
    <Location>.</Location>
 <Version>1.0.0.0</Version>
  </Application>
  <Files>
    <File Ver="1.0.0.0" Name="ItemSoft.exe" />
    <File Ver="1.0.0.0" Name="Reports\test.txt"/>
    <File Ver="1.0.0.0" Name="Interop.grproLib.dll"/>
    <File Ver="1.0.0.0" Name="Reports\test.grf"/>
  </Files>
</AutoUpdater>

說明:
<description></description>     程序的描述;
<Url></Url>                            更新服務器地址,為一個虛擬目錄或站點路徑;
<EntryPoint></EntryPoint>      需要更新主程序文件,為exe;
 <Location>.</Location>         需要更新主程序文件所在路徑;
<Version>1.0.0.0</Version>   主程序版本號;
  <Files> </Files>                     需要更新的文件列表;Ver:文件版本號,Name:文件名,包括路徑(相對);

使用時,在更新服務器上新建Web虛擬目錄或站點,然后將需要更新的文件與UpdateList.xml放在上面;
本地將AutoUpdate.exe與UpdateList.xml放在主程序的根目錄下。本地UpdateList.xml中的版本號如果小於服務端,自動程序會自動下載所需要更新的文件。
本人的完整.Net打包程序下載中所帶的項目中,就使用了此更新程序。
源碼下載: /Files/jenry/AutoUpdate.rar
二進制文件下載: /Files/jenry/bin.rar
生成配置文件UpdateList.xml工具/Files/jenry/AULWriter1.0.rar (由whatisgood 提供,感謝!!) New


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM