更新應用程式的困難。使用MicrosoftWindowsInstaller部署,每次應用程式更新,用戶都必須重新安裝整個應用程式;使用ClickOnce部署,則可以自動提供更新。只有更改過的應用程式部分才會被下載,然後從新的並行資料夾重新安裝完整的、更新後的應用程式。
對用戶的計算機的影響。使用WindowsInstaller部署時,應用程式通常依賴於共享組件,這便有可能發生版本衝突;而使用ClickOnce部署時,每個應用程式都是獨立的,不會干擾其他應用程式。
安全許可權。WindowsInstaller部署要求管理員許可權並且只允許受限制的用戶安裝;而ClickOnce部署允許非管理用戶安裝應用程式並僅授予應用程式所需要的那些代碼訪問安全許可權。
過去,這些問題有時會使開發人員決定創建Web應用程式而不是基於Windows的應用程式,為便於安裝而犧牲了Windows窗體豐富的用戶界面和回響性。對於使用ClickOnce部署的應用程式,您可以集這兩種技術的優勢於一身。
什麼是ClickOnce應用程式?
簡單說來,ClickOnce應用程式就是任何使用ClickOnce技術發布的Windows窗體或控制台應用程式。可以採用三種不同的方法發布ClickOnce應用程式:從網頁發布、從網路檔案共享發布或是從媒體(如CD-ROM)發布。ClickOnce應用程式既可以安裝在最終用戶的計算機上並在本地運行(即使當計算機脫機時也可以運行),也可以僅以在線上模式運行,而不在最終用戶的計算機上永久安裝任何內容。有關更多信息,請參見選擇ClickOnce部署策略。
ClickOnce應用程式可以自行更新;這些應用程式可以在較新版本變為可用時檢查較新版本,並自動替換所有更新的檔案。開發人員可以指定更新行為;網路管理員也可以控制更新策略,如將更新標記為強制性的。最終用戶或管理員還可以對更新進行回滾,使應用程式恢復到早期的版本。
因為ClickOnce應用程式在本質上是被隔離的,所以安裝或運行ClickOnce應用程式不會干擾現有的應用程式。ClickOnce應用程式是完全獨立的;每個ClickOnce應用程式都安裝到一個安全的基於每個用戶、每個應用程式的快取中,並從該快取運行。默認情況下,ClickOnce應用程式運行在Internet或Intranet安全區域中。如果有必要,應用程式可以請求提升的安全許可權。