VS 2005 製作Web安裝- 使用InstallShield11.5部署Web程序 .NET 2.0安裝與部署

 

InstallShield11.5 的下載地址(其中包含破接的方法,好好看看相信應該是沒問題的):

http://58.251.57.67/down?cid=4D3139AC2CEE2E2D6C5801523C7902D3C1BF7FFA&t=13&fmt=-

 

 

1、檢查服務器是否安裝Microsoft.Net Framework 2.0,如果安裝,自動安裝。
2、在IIS中建立站點,併爲站點建立單獨的應用程序池
3、在MS SQL Server中建立數據庫,並初始化數據,同時將用戶輸入的信息保存在數據庫中
4、修改Web.config中的數據庫連接字符串。

 
建立一個Basic MSI Project,命名爲VS2005SampleSetup。

切換到Project Assistant視圖
一、在Application Information中,設置安裝程序的基本信息。

二、在Installation Requirements中,設置系統需求。因爲我們要在IIS中建立站點,所以只選擇Windows 2003 Server。

三、在Application Files中,修改默認的安裝路徑,並設置Web程序中的文件。
 

四、在Installation Interview中,設置不顯示授權文件,允許用戶更改安裝路徑,不允許用戶更改安裝部件
 
切換到Installation Designer視圖
一、修改安裝流程,讓用戶輸入一些信息,我們將把這些信息保存在數據庫中。另外,讓用戶選擇數據庫服務器,並設置數據庫名稱。
1、選擇User Interface下的Dialogs節點。

2、在中間列表的All Dialogs上點右鍵,選擇New Dialog...,出現新對話框嚮導

3、點下一步,設置對話框類型。這裏一共有4種類型,選擇一種後,下邊會顯示它的描述。這裏我們選擇Interior Wizard Panel。去掉Let me Insert this dialog into a sequence複選框,點擊Finish關閉嚮導

4、修改對話框名稱爲UserInfo。
5、點開UserInfo,選擇Chinese(Simplified)節點,向對話框中添加控件。

6、對話框編輯器和VS2005裏WinForm的設計器差不多,很容易上手。選中一個控件,可以在右側的屬性框中設置它的各個屬性值。下面,我們要添加一個輸入框讓用戶來輸入一個用戶名,以便我們將它插入到數據庫中。
我們選擇工具欄上的輸入框按鈕,在對話框上劃出一個區域,鬆開鼠標後,會提示我們輸入這個控件的Property。我們在程序的其它位置,可以通過這個屬性訪問到它的值。這裏我們輸入US_USER_NAME。按照這個方法,你可以添加其它需要的控件。完成後的對話框如下圖所示:

7、按照上面的方法,再添加一個對話框DataBaseName,讓用戶輸入要建立的數據庫的名稱,輸入框的Property設置成US_DATABASE_NAME。完成後的對話框如下圖:

8、對話框建立好了,下面的工作就是把它們放到安裝步驟裏面去。
9、選擇Behavior and Logic節點下面的Sequences,在中間的列表中,選擇User Interface下的InstallWelcome,這就是按出現順序排列的安裝時要顯示的各個對話框。
 
我們需要把UserInfo對話框放在SQLLogin的前面,DataBaseName對話框放在SQLLogin的後面,怎麼做呢?很簡單。先選中SQLLogin前面的DestinationFolder,在右側空格中選擇【Edit dailog behavior】,然後在中間空格中選擇Next,我們可以看到,右側列表中的有一個NewDialog的Event,Argument是SQLLogin。
 
我們只需把SQLLogin改成UserInfo就可以了。同時,編輯UserInfo的Next按鈕的事件,也添加一個NewDialog的Event,Argument設置成SQLLogin,Condition是執行這個事件的條件,如果條件不成立,就不會執行這個事件。這裏我們設置成US_USER_NAME<> "",也就是說,如果用戶不輸入用戶名,則不會進行到下一步。經過這樣的設置後,現在的User Interface中的對話框順序是這樣的:
二、在IIS中建立站點
1、選擇Server Configuration下的Internet Information Services節點
2、右鍵點擊中間列表的Application Pools節點,選擇Add Application Pool。

3、修改剛建立的應用程序池的名稱爲VS2005SmaplePool。選中VS2005SmaplePool,你可以在右邊的選項中設置各個選項的值,這裏就不再詳細說了
4、右鍵點擊中間列表的Web Sites節點,選擇Add Web Site。

5、修改新建立的站點名爲VS2005Sample。
 

6、選中VS2005Sample站點,在右邊設置站點的選項。
 選擇General標籤,如果你想在卸載程序時刪除站點,選擇Delete Web Site on Unistall。
 
 
選擇Web Site標籤,在Site Number中輸入一串隨機的數字。這個數字串是IIS中的站點ID。

 選擇Home Directory標籤,在Local Path中設置站點的路徑,如本例中,爲[INSTALLDIR]/Web。同時,修改下邊的應用程序池爲我們剛纔建立的VS2005SamplePool。

 選擇Documents標籤,設置網站的起始頁,本例爲Default.aspx

 其它的選項可以根據實際情況進行設置,本例中用不到,就不再設置了。
7、在VS2005Sample站點下建一下虛擬目錄,取名爲NoUse。這個虛擬目錄其實一點用也沒有,但是如果不建虛擬目錄,InstallShield不會建立站點。
至此,站點就建立完成了。
 
三、建立數據庫並初始化數據。
前提是:你已經在本地的SQL Server服務器中建立了一個數據庫,並已經初始化好了數據。
1、選擇Server Configuration下的SQLScripts節點
2、右鍵點擊中間列表的SQL Scripts節點,選擇Database import wizard...,出現數據庫導入嚮導

3、點下一步,選擇本地數據庫的服務器和登錄信息

4、點下一步,選擇要導入的數據庫和要生成的腳本的名稱

5、點下一步,選擇要包含的表。一般選擇Include All Tables

6、點下一步,選擇其它數據庫對象。如果需要同時導入數據,請選中Records

7、點下一步,設置腳本生成選項。一般的選項如下圖

8、點下一步,準備生成腳本。如果你想在每次生成安裝程序時都重新掭數據庫腳本,請選中Regenerate Script at Build。一般情況下,如果你的數據庫不是經常變動,不要選擇此項
9、點Finish,InstallShield會開始爲我們編寫腳本。
10、腳本生成完成後,在中間列表中選中剛生成的腳本,本例爲VS2005SmapleDatabaseScript。
11、在右邊,選擇Script標籤,在腳本的頂部,添加生成數據庫的腳本
CREATE DATABASE [__VS2005SampleDataBaseName__] 
四、修改Web.config中的數據庫連接字符串
1、選擇System Configuration下的XML File Changes節點,在中間窗格中右鍵XML Files,選擇Import...

2、找到Web.config文件
 

3、只選擇數據庫連接字符串這個節點。

4、導入

5、在General標籤中修改value屬性的值爲:Server=[IS_SQLSERVER_SERVER];DataBase=[US_DATABASE_NAME];uid=[IS_SQLSERVER_USERNAME];pwd=[IS_SQLSERVER_PASSWORD];
 
四、修改Web.config中的數據庫連接字符串
1、選擇System Configuration下的XML File Changes節點,在中間窗格中右鍵XML Files,選擇Import...

2、找到Web.config文件
 

3、只選擇數據庫連接字符串這個節點。

4、導入

5、在General標籤中修改value屬性的值爲:Server=[IS_SQLSERVER_SERVER];DataBase=[US_DATABASE_NAME];uid=[IS_SQLSERVER_USERNAME];pwd=[IS_SQLSERVER_PASSWORD];
 

GO  
USE [__VS2005SampleDataBaseName__]
GO
在腳本的底部,添加插入數據的腳本
Insert into [User](Name,NickName) Values ('__USER_NAME__','__USER_NAME__')
GO
其中,__VS2005SampleDataBaseName__、__USER_NAME__是用戶指定的,我們在下一步裏會用變量替換它們。
12、選擇Text Replacement標籤,替換__VS2005SampleDataBaseName__和__USER_NAME__爲用戶輸入的值。
__VS2005SampleDataBaseName__就要替換成US_DATABASE_NAME,
__USER_NAME__替換成US_USER_NAME。這樣,InstallShiled在執行數據庫腳本時,會先把__VS2005SampleDataBaseName__和__USER_NAME__替換成我們需要的值。
 
 
五、發佈
1、選擇Media下的Releases節點,在中間的Release節點上點右鍵,選擇Release wizard。

2、點擊Next,輸入配置名稱,VS2005SampleConfiguration

3、點擊Next,輸入Release名稱,這裏輸入OneImage

4、點擊Next,選擇包含的語言。

5、點擊Next

6、點擊Next,Media Type選擇Web。如果你想刻成安裝光盤,可選擇CD。

7、點擊Next,選擇安裝類型。這裏選擇One Executable,即一個Setup裏包括所有需要用到的文件。

8、點Next,Next,在Windows Installer Location對話框中,選擇Extract engine from setup.exe。

9、點Next,Next,在Password & Copyright對話框中,你可以設置自己的版權標誌。這會在生成的Setup.exe文件上有所體現

10、Next,最重要的一步:選擇Include or set up .NET Framewor。其它選擇按照圖片設置。

11、Next,Next,Next,Next,Next,Finish!!!如果你選擇了Build the Release,Install Shield會馬上編譯並生成安裝文件。

12、到這裏,還有一個小缺憾,就是安裝時,如果發現目標機器上沒有安裝.NET Framework,會提示用戶是否安裝。這怎麼行?不安裝我的程序就沒法運行啊,一定要去掉它。還好可以設置。選擇我們剛配置好的OneImage的Relase,在右邊的屬性表中,設置Display .NET Option Dialog的值爲No,就不再詢問用戶是否安裝.NET Framework了,如果發現沒有安裝,就立即安裝,爽!

六、總結
不能完成:1、設置ASP.NET版本。2、設置主機頭。 這些需要安裝完成後手動設置。
發佈了36 篇原創文章 · 獲贊 4 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章