對Web Setup Project項(xiàng)目進(jìn)行說明
隨著時(shí)代的進(jìn)步科技的發(fā)展Web Setup Project也快速的提升與升級,下面我就對升級前和升級后的Web Setup Project,做一下自己的解析。希望能夠?qū)Υ蠹矣袔椭?下面就對這個(gè)問題講解下。
1.在“新建項(xiàng)目”對話框的左側(cè)樹狀圖中選擇“Other Project Types”->“Setup and Deployment”節(jié)點(diǎn),在右側(cè)選擇“Web Setup Project”。
2.在Solution Explorer中在Solution上點(diǎn)右鍵,選擇“Add”->“Existing Web Site”,將存放編譯好的Web網(wǎng)站的文件夾加入Solution中。如果添加使用aspnet_compiler編譯好的網(wǎng)站,有可能會出現(xiàn)下面的提示框,點(diǎn)擊“是”就行。
3.編譯好的網(wǎng)站中加入osql.exe;CreateDB.txt;database.mdf;database_Log.ldfosql.exe 在sqlserver安裝文件夾下可以找到,關(guān)于osql的使用及參數(shù)說明請另查資料,CreatDB.txt 中記錄數(shù)據(jù)庫的相對位置,比如數(shù)據(jù)庫放在網(wǎng)站根目錄下,則CreatDB.txt內(nèi)容為空。
4.再添加一個(gè)新的“Class Library”,名稱“CreateDB”,用以創(chuàng)建數(shù)據(jù)庫的操作。刪除默認(rèn)生成的“class1.cs”,在這個(gè)項(xiàng)目上點(diǎn)右鍵,選擇“Add”->“New Item”,在彈出的對話框中選擇“Installer Class”,點(diǎn)擊OK。需要的命名空間有:
5.在“Web Setup Project”項(xiàng)目上點(diǎn)右鍵,選擇“Add”->“File”,將創(chuàng)建數(shù)據(jù)庫表、存儲過程和視圖的腳本createdb.sql加入。重復(fù),將向數(shù)據(jù)表中添加基礎(chǔ)數(shù)據(jù)的腳本insertdata.sql加入。重復(fù),將程序osql.exe加入。#t#
6.在“Web Setup Project”項(xiàng)目上點(diǎn)右鍵,選擇“Add”->“Merge Module”,在彈出的對話框中選擇“VC_User_CRT71_RTL_X86_---.msm”,點(diǎn)擊OK。添加這個(gè)VC運(yùn)行庫是因?yàn)樵谝慌_干凈的機(jī)器上測試的時(shí)候發(fā)現(xiàn)osql.exe這個(gè)程序需要這個(gè)庫。
7.在“Web Setup Project”項(xiàng)目上點(diǎn)右鍵,選擇“Properties”,在彈出的對話框中可以設(shè)置一些安裝程序的屬性。點(diǎn)擊按鈕“Prerequisites”,在彈出的對話框中選中“.NET Framework 2.0”和“Windows Installer 3.1”,選中“Download prerequisites from the same location as my application”。這樣就可以把這些組件和應(yīng)用程序打包在一起,安裝的時(shí)候自動(dòng)檢測并安裝了。如果需要部署的計(jì)算機(jī)如果沒有打過***的補(bǔ)丁的話,是沒有“Windows Installer 3.1”的,如果沒有這個(gè)組件,“.NET Framework 2.0”是不能安裝的。
8.在“Web Setup Project”項(xiàng)目上點(diǎn)右鍵,選擇“View”->“Custom Actions”,在出現(xiàn)的樹狀圖的節(jié)點(diǎn)“Install”上點(diǎn)右鍵,選擇“Add Custom Actions”。在彈出的對話框中“Look in”中選擇“Web Application Folders”,在下面選擇“Primary output from CreateDB (Active)”,點(diǎn)擊OK。
9.在“Web Setup Project”項(xiàng)目上點(diǎn)右鍵,選擇“View”->“User Interface”,在出現(xiàn)的樹狀圖節(jié)點(diǎn)“Install”的子節(jié)點(diǎn)“Start”上點(diǎn)擊右鍵,選擇“Add Dialog”,在彈出的對話框中選擇“TextBoxes(A)”。