除了在軟體架構設計中需要規劃好各功能項以備分別可以實現局部升級外,重要的是配置好自動升級組件。然而該自動升級組件並非直接引用即可,它需要遵守一定的規則部署才能完成自動升級。以下給出它的配置手冊。
必備的檔案清單:
檔案名稱 功能描述
AppStart.exe類似中介代理的程式,由它來啟動真正的應用程式。不直接啟動主應用程式是為了防止主應用程式升級的過程中被鎖死而造成升級失敗。
AppStart.configAppStart.exe的設定檔,它指定要啟動的應用程式所在目錄,以及要啟動應用程式的名稱
appupdater.dll 最重要的組件,自動升級的主要組件
system.Resources.dll資源檔
mscorlib.Resources.dll核心資源檔
UpdateVersion.xml伺服器端版本升級設定檔
自動升級配置:
注意事項:
1. 因為自動升級組件appupdater代碼裡寫死的原因,AppStart.config和AppStart.exe是不能改名的!
2. 伺服器端最好使用Windows 2000 Server . 使用Windows 2003 Server 會因為網路安全性原則造成訪問不了伺服器目錄資源,升級失敗。
3. 伺服器端需要把提供升級的該網站配置為允許瀏覽目錄。
4. 檔案的階層必須如下配置:
用戶端執行程式目錄結構如下
AppStart.exe (不能改名)
AppStart.config (不能改名)
ClientExe (這個目錄名稱可以自定,但必須同時修改AppStart.config的AppFolderName項內容)
TrySmartClient.exe(這個是自定的主應用程式)
appupdater.dll (自動升級組件)
其中AppStart.config內容如下:
<Config>
<AppFolderName>ClientExe</AppFolderName>
<AppExeName>TrySmartClient.exe</AppExeName>
</Config>
AppStart.config解釋:
<AppFolderName>ClientExe</AppFolderName>
告訴AppStart.exe要尋找的主應用程式目錄名稱。
<AppExeName>TrySmartClient.exe</AppExeName>
告訴AppStart.exe要尋找的主應用程式名稱。
伺服器端目錄結構(該目錄需要設定為允許瀏覽目錄):
UpdateVersion.xml (必須,不能改名)
Ver (可自定,但必須同時修改UpdateVersion.xml的ApplicationUrl項內容)
TrySmartClient.exe (新版本主應用程式)
mscorlib.Resources.dll (資源檔)
system.Resources.dll(資源檔)
其中UpdateVersion.xml內容如下:
<VersionConfig>
<AvailableVersion>6.0.0.0</AvailableVersion>
<ApplicationUrl>http://YourServerDomainName/SmartServer/Ver/</ApplicationUrl>
</VersionConfig>
UpdateVersion.xml解釋:
<AvailableVersion>6.0.0.0</AvailableVersion>
告訴用戶端目前可用的版本,用戶端appupdater組件會比較本地主應用程式版本號碼和該項配置的版本號碼,如果比本地的版本號碼更高,則進行下載更新。
<ApplicationUrl>http://YourServerDomainName/SmartServer/Ver/</ApplicationUrl>
告訴用戶端到哪個網址進行下載更新
按上述目錄結構和設定檔內容,appupdater組件的關鍵屬性配置應該如下:
AutoFileLoad:True
ChangeDetectionModeServerManifestCheck
UpdateUrlhttp://YourServerDomainName/SmartServer/UpdateVersion.xml
appupdater組件關鍵屬性配置解釋:
AutoFileLoad = true //允許自動檔案裝載
ChangeDetectionMode :ServerManifestCheck //檢測模式:根據設定檔進行檢測,也就是UpdateUrl屬性指定的檔案。
UpdateUrl :指定自動升級組件檢測伺服器端升級設定檔統一資源定位位置和檔案名稱。(也就是網址)
上述配置在.Net Framework 1.1 和Windows2000下測試通過.
此資訊來自〖阿媽阿妹〗
查看原網址:http://www.amamei.cn/nt/NtDetail.aspx?id=3081