閑談.NET Framework無接觸部署方法
.NET Framework在進行WEB應(yīng)用程序的部署方面具有非常強大的優(yōu)越性。我們可以通過本文介紹的有關(guān).NET Framework無接觸部署的相關(guān)方法來詳細(xì)的解讀其中的優(yōu)勢,分析無接觸部署的好處。#t#
您是否曾經(jīng)必須部署 Visual Basic 客戶端服務(wù)器應(yīng)用程序?或者曾經(jīng)必須部署依賴于 COM 注冊的 Win32 應(yīng)用程序?企業(yè)桌面環(huán)境中的正確安裝一直受到各種問題的困擾,這其中既有試圖使所有用戶升級這樣的簡單問題,也有較為復(fù)雜的 DLL 版本控制問題。
與 Web 應(yīng)用程序相比,桌面應(yīng)用程序有很多優(yōu)點,具體表現(xiàn)在以下幾個方面:
·豐富的用戶界面 (UI)
·較快的響應(yīng)速度
·較好的性能
·能夠脫機運行
·可以有效地使用邊緣資源(客戶機)
·易于同本地應(yīng)用程序和 API 集成
盡管桌面應(yīng)用程序具有以上優(yōu)點,但由于 Web 應(yīng)用程序使應(yīng)用程序的部署和更新相對容易,因此在過去幾年中得到了廣泛的應(yīng)用。
Microsoft 準(zhǔn)備通過 .NET Framework 將 Web 應(yīng)用程序在部署和維護方面的所有優(yōu)點都集成到桌面應(yīng)用程序中。DLL 版本控制問題也得到了解決 - 在默認(rèn)情況下,使用.NET Framework無接觸部署生成的應(yīng)用程序彼此完全孤立,并從各自的專用應(yīng)用程序目錄中檢索其 DLL。DLL 仍然可以在多個應(yīng)用程序之間共享,但這并非使用系統(tǒng)注冊表實現(xiàn),而是將共享的 DLL 存儲在 .NET Framework 全局程序集緩存中,該程序集緩存可加載給定 DLL 的多個版本并跟蹤版本與應(yīng)用程序之間的匹配關(guān)系。
在實際部署應(yīng)用程序的過程中,.NET Framework 允許系統(tǒng)管理員按照部署和更新 Web 應(yīng)用程序(通過遠(yuǎn)程 Web 服務(wù)器)的方式部署應(yīng)用程序和應(yīng)用程序更新。此項技術(shù)稱為無接觸部署,是本文要論述的中心內(nèi)容。
使用 Web 服務(wù)器的.NET Framework無接觸部署
使用無接觸部署,可以下載、安裝和直接在用戶計算機上運行 Windows 窗體應(yīng)用程序(使用 .NET Framework 的 Windows 窗體類生成的桌面應(yīng)用程序),而無須改變注冊表或共享的系統(tǒng)組件。
.NET Framework無接觸部署工作原理
.NET Framework 安裝提供了一個掛接 Internet Explorer 5.01 和更高版本以偵聽所請求的 .NET 程序集的機制。在請求期間,可執(zhí)行程序被下載到磁盤上稱為程序集下載緩存的位置。然后,名為 IEExec 的進程在具有有限安全設(shè)置的環(huán)境中啟動該應(yīng)用程序。