我們經常會遇到這樣的問題:自己開發好了一個Winform系統,如何使之可以平穩的運行在沒有安裝.NET Framework 的操作系統上?這就涉及到打包和部署的內容,通過打包和部署形成安裝程序,實現WinForm應用軟件正常的安裝在客戶的操作系統上。另一方面同時需要考慮通過打包和部署形成卸載程序,將該應用軟件卸載掉,達到方便客戶使用的目的。
本章重點介紹Winform系統打包和部署的概念,通過實例介紹如何進行打包和部署的方法。
u 本章的學習目標:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

n 瞭解打包和部署的概念

n 掌握簡單打包和部署的方法

n 掌握複雜打包和部署的方法

8-1           Winform打包和部署介紹

本節學習目標:

n 瞭解Winform打包模式
n 瞭解部署項目應遵循的基本步驟

<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />8-1-1 簡介

1.打包模式

爲應用程序打包有很多種方法,其中包括:
n 安裝程序文件(使用 Microsoft Windows 安裝程序)
n CAB 文件項目
n 合併模塊
要將合併模塊添加至部署項目,請執行以下步驟:在解決方案資源管理器中選擇部署項目。單擊項目添加合併模塊。使用添加模塊對話框選擇要添加的合併模塊。

 2.部署應用程序

  可以使用下列其中一種方式部署 Winform 應用程序
n 運行安裝程序
n 使用 Internet 下載並部署 CAB 程序包
n 使用 XCOPY 將文件複製到目標文件夾中
n 使用系統管理服務器將應用程序部署到幾臺目標計算機上

8-1-2 創建部署項目

1.新建部署項目應遵循如下步驟:

(1).打開現有或新的 WindForms 應用程序
(2).單擊文件新建項目,打開新建項目對話框
(3).項目類型列表中選擇安裝和部署項目文件夾(如圖8-1
(4).在對話框右邊的模板列表中選擇所需的部署項目類型
    不同的類型有:
n 安裝項目
n Web 安裝項目
n 合併模塊項目
n 安裝嚮導
n Cab 項目
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
8-1  新建項目舉例

2.可用於 Winform 應用程序的模板的說明

項目類型

 

安裝項目

用於爲 Winform 應用程序創建安裝程序

Web 安裝項目

Visual Studio.NET 還支持在 Web 服務器上部署。使用此方法在 Web 服務器上安裝文件將自動處理與註冊和配置相關的問題

合併模塊項目

可以由多個應用程序共享的程序包和組件。例如,如果應用程序有五個實用程序文件,則可以將它們打包到一個合併模塊項目中,然後合併到任何應用程序中

安裝嚮導

它是一個嚮導,指導用戶快速完成創建安裝程序的步驟。可以自定義安裝嚮導,以便在安裝期間添加更多文件或練習更多控件

Cab 項目

生成用於下載到 Web 瀏覽器的 Cab 文件

8-1 安裝項目類型

8-2            簡單的打包和部署

本節學習目標:

n 配置應用程序文件夾
n 配置應用程序菜單
n 配置用戶桌面快捷文件
n 配置快捷文件圖標
n 配置卸載快捷文件的基本步驟
n 生成安裝卸載包文件
  在安裝項目類型中,比較適合Winform 應用程序創建安裝程序部署的是表8-1的第一項。下面,我們通過實例學習怎麼進行簡單的Winform 應用程序的打包和部署。

8-2-1 案例學習:Visual Studio2005環境下建立簡單的打包和部署系統

1. 新建安裝部署項目

打開Visual Studio2005,點擊新建項目,選擇:其他項目類型->安裝與部署->安裝嚮導(安裝項目也一樣),然後點擊確定。詳見圖8-2所示。

8-2   新建安裝部署項目示意

2. 配置安裝系統文件

在點擊圖8-2的確定後,將進入到安裝系統文件的配置界面中,如圖8-3所示。

8-3 安裝系統文件的配置界面圖

u 實驗步驟(1):

鼠標左鍵點擊「應用程序文件夾」,在打開的右側界面中單擊鼠標右鍵,在彈出的快捷菜單中選擇「添加」->「文件」,如圖8-4所示。

8-4  創建可執行文件快捷方式示意圖

u 實驗步驟(2):

在打開的文件選擇界面中,添加某文件夾中具體的文件,這類文件主要包括兩種:.EXE文件或者是.dll文件。一般而言,一個C# Winform應用程序在Visual Studio2005平臺下開發的時候,會自動將這兩種文件生成在你的Winform應用程序所在目錄下的bin文件夾裏面的Debug子文件夾下面,其中.EXE爲可執行文件,而.dll文件的來源多是用戶自定義編輯的類庫文件,或者是第三方的動態鏈接庫文件,如果你的項目之中存在上述兩種情況,那麼請你務必將這些文件一併作爲打包文件放進來。我們以第二章應用軟件爲例進行打包,圖8-5爲最終找尋的.EXE文件或者是.dll文件所在之處。其實一個比較簡單的辦法就是,將你的Winform應用程序所在目錄下的bin文件夾裏面的Debug子文件夾下面的所有文件全部取來即可。這裏有一點提醒讀者的是:如果你的項目中有圖片或者其他多媒體文件,請你也一併將之選中,放在文件裏面。
8-5  選擇動態鏈接庫和可執行文件示意圖

選擇後的文件將出現在「應用程序文件夾」之中,如圖8-6所示。
8-6  選擇可執行文件和動態鏈接庫文件後示意圖

    鼠標右鍵單擊應用程序文件夾,選擇屬性窗口,在彈出的屬性窗口中將defaultlocation屬性路徑中的"[manufacturer]"去掉,不然的話做好的安裝程序默認安裝目錄會是「c:\programm file\你的用戶名\安裝解決方案稱

8-7 刪除屬性 [ manufacturer ] 示意圖

u 實驗步驟(3):

在圖8-6基礎上,於右側欄目單擊鼠標右鍵,添加「文件夾」,併爲該文件夾取名爲img,如圖8-7所示。該img文件夾存儲系統的所有圖片文件,爲啓動和卸載文件分別增加快捷圖像做前期準備,類型必須爲.ICO文件(圖標文件)
8-8  添加圖片文件夾示意圖

在點擊左側新建的img文件夾, 於右側欄目單擊鼠標右鍵,添加「文件」,從你的磁盤中選擇兩個.ICO文件(圖標文件)放置其中即可。如圖8-8所示。
8-9  添加ICO圖片文件夾示意圖

u 實驗步驟(4):

本步驟對於卸載軟件系統至關重要,如果不添加將無法形成卸載你已經安裝的文件。請你再次於右側欄目單擊鼠標右鍵,添加「文件」,請你在c:\windows\system32文件夾下找尋一個叫msiexec.exe的文件,並將之添加到應用程序文件夾下面。該文件將負責執行卸載你安裝的軟件。如圖8-9所示。
8-10  添加卸載可執行文件示意圖

u 實驗步驟(5):

本步驟將在應用程序文件中增加系統.Net FrameWork組件,如果不進行這一步,對於沒有安裝.Net FrameWork組件的操作系統,即便安裝了您的應用軟件,該系統也無法運行。
打開解決方案管理器,右擊你的解決方案名稱,選擇屬性:在打開的屬性頁中,選擇系統必備。如圖8-10,圖8-11所示。
8-11  選擇安裝項目屬性示意圖

8-12  展開後的系統安裝包配置示意圖

在圖8-11展開的系統必備內容中,將.Net FrameWork2.0組件包和Windows Installer2.0組件包一併選中。如圖8-12所示。
8-13  .Net FrameWork2.0組件包和Windows Installer2.0組件包一併選中

u 實驗步驟(6):

截至步驟5,我們完成了對應用程序夾中全部文件的添加工作。本步驟將引導讀者開始配置左側導航條中的「用戶的程序菜單」。該菜單將出現在操作系統「開始」欄目的「程序」裏面。因此建議以文件夾形式出現,裏面包含執行程序和卸載程序兩個可執行文件的快捷方式文件。
u實驗步驟(6):

截至步驟5,我們完成了對應用程序夾中全部文件的添加工作。本步驟將引導讀者開始配置左側導航條中的「用戶的程序菜單」。該菜單將出現在操作系統「開始」欄目的「程序」裏面。因此建議以文件夾形式出現,裏面包含執行程序和卸載程序兩個可執行文件的快捷方式文件。
鼠標左鍵點擊「用戶的程序菜單」,在右側導航欄目中的空白處單擊鼠標右鍵,添加文件夾,假設我們給這個文件夾取名「警匪爭霸」。如圖8-13所示。
8-14  「用戶的程序菜單」中建立文件夾

在「警匪爭霸」文件夾中單擊鼠標右鍵,選擇「創建新的快捷方式」。如圖8-14所示。
8-15  創建新的快捷方式

在打開的創建新的快捷方式窗口中,選擇「應用程序文件夾」中的可執行文件(.exe文件)。這兩個文件分別是:WindowsApplication2.exe(項目可執行文件)和msiexec.exe(卸載軟件項目可執行文件)如圖8-15所示。
8-16  添加快捷方式文件

在「應用程序文件夾」中,名稱不太適合安裝包的命名。請你將這兩個快捷方式分別更名爲假設的「警匪爭霸」和「卸載警匪爭霸」,如圖8-16所示。
8-17  爲快捷方式文件重新命名

u 實驗步驟(7):

截至步驟6,我們完成了在開始欄目的程序中添加執行文件夾的任務。此次步驟我們將完成快捷方式文件的圖標配置工作。
鼠標右鍵單擊快捷文件「警匪爭霸」,在彈出菜單中選擇「屬性窗口」,在屬性窗口之中配置快捷文件「警匪爭霸」的icon屬性,選擇瀏覽。如圖8-17所示。
8-18  配置快捷文件「警匪爭霸」的icon屬性

在彈出的「圖標」對話框中,點擊瀏覽,尋找應用程序文件夾下面的img文件夾,選擇其中的一個ico圖標。如圖8-18所示。對於「警匪爭霸卸載」的快捷方式圖標的配置也是一樣。
8-19  選擇圖標文件

u 實驗步驟(8):

此次步驟我們將完成對卸載文件註冊表的配置工作。按照圖8-