您好,登錄后才能下訂單哦!
本篇內容介紹了“C#安裝類如何完整打包”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
首先,創建一個安裝和部署項目。步驟如下:
1.在 "解決方案資源管理器 "中的解決方案中添加一個新項目。
用鼠標右鍵單擊解決方案,在彈出的菜單中選擇 "添加 "-> "新建項目 "。在打開的對話框中選擇 "安裝和部署項目 ",并選擇 "Web安裝項目 "模板。在輸入項目名稱后,點擊 "確定 "按鈕,將新項目添加到解決方案中。
2.將項目的輸出添加到安裝和部署項目中。
添加完安裝和部署項目后,vs.net2003 IDE會自動打開一個名為 "文件系統 "的管理器。用鼠標右鍵單擊此管理器右邊樹型結構中的 "Web應用程序文件夾 ",在彈出的菜單中選擇 "添加 "-> "項目輸出 "。在彈出的對話框中,選擇 "項目 "(這時只有一個,就是你的web應用程序項目),然后在下面的列表中選擇 "主輸出 "和 "內容文件 "兩項(可以復選),接著在 "配置 "中選擇 "Release .NET ",點擊 "確定 "按鈕。
經過上面兩個步驟,一個基本的安裝和部署程序就制作完成了,將此項目編譯后就得到了一個Web安裝程序包。
然而,在很多的情況下,我們做的Web應用程序都要使用到數據庫,能不能在安裝程序的同時也將數據庫一起安裝呢?答案是肯定的。那該怎么做呢?這個問題李洪根先生已經解決了,具體內容可以參看下面的文章
http://blog.csdn.net/lihonggen0/archive/2004/05/17/13654.aspx在李洪根先生的這篇文章中詳盡的介紹了安裝程序的制作和如何同時安裝數據庫。在此大致敘述如下:
1.新建一個類庫項目,刪除自動生成的Class.cs,重新添加一個新項。鼠標右鍵此項目,在彈出的菜單中選擇 "添加 "-> "添加新項 ",在彈出的對話框中選擇 "安裝程序類 "。
2.創建一個自定義的安裝對話框。鼠標右鍵點擊 "解決方案資源管理器 "中的安裝和部署項目,在彈出的菜單中選擇 "視圖 "-> "用戶界面 "。在打開的 "用戶界面 "管理器中,鼠標右鍵點擊 "啟動 ",在彈出的菜單中選擇 "添加對話框 "。在打開的對話框中選擇 "文本框(A) "。選擇 "文本框(A) ",在屬性中,依次設置含Property屬性為CUSTOMTEXT1,CUSTOMTEXT2,CUSTOMTEXT3,CUSTOMTEXT4。
3.創建自定義操作。鼠標右鍵點擊 "解決方案資源管理器 "中的安裝和部署項目,在彈出的菜單中選擇 "視圖 "-> "自定義操作 "。在打開的 "自定義操作 "管理器中,鼠標右鍵點擊 "安裝 ",在彈出的菜單中選擇 "添加自定義操作 "。在打開的對話框中,在 "查找范圍 "中選擇 "Web應用程序文件夾 ",選擇下面列表中的 "主輸出來自Install1(活動) "(Install1是 "安裝程序類 "所在的項目名。如果列表中沒有,可以用上面提到的 "將項目的輸出添加到安裝和部署項目中 "的方法添加)。然后在 "自定義操作 "管理器中選擇剛添加的內容,在屬性窗口中設置CustomActionData屬性/dbname=[CUSTOMTEXT1] /server=[CUSTOMTEXT2] /user=[CUSTOMTEXT3] /pwd==[CUSTOMTEXT4] /targetdir= "[TARGETDIR]\ "
注意:每個設置內容以/分隔,且以空格分開。
4.在此類中重寫Install方法,并添加下面的代碼
string strConn=String.Format( "data source={0};user id={1};password={2}; ",this.Context.Parameters[ "server "],this.Context.Parameters[ "user "],this.Context.Parameters[ "pwd "]); this.ExecuteSQL(strConn, "master ", "CREATE DATABASE "+this.Context.Parameters[ "dbname "]); System.Diagnostics.Process pSQL=new System.Diagnostics.Process(); pSQL.StartInfo.FileName= "osql.exe "; pSQL.StartInfo.Arguments=String.Format( " -U {0} -P {1} -d{2} -i {3}db.sql ",this.Context.Parameters[ "user "], this.Context.Parameters[ "pwd "], this.Context.Parameters[ "dbname "],this.Context.Parameters[ "targetdir "]); pSQL.StartInfo.WindowStyle=System.Diagnostics.ProcessWindowStyle.Hidden; pSQL.Start(); pSQL.WaitForExit(); pSQL.Close();
這樣,編譯后的安裝程序就可以連數據庫一起安裝了。
安裝數據庫的問題解決了,還有一個問題,那就是要使ASP.NET程序運行,一個重要的條件就是目標計算機上必須有.NET框架,那能不能在安裝程序時也一同將.NET框架一塊安裝了呢?答案還是肯定的。具體可以參看
http://www.microsoft.com/china/MSDN/library/netFramework/netframework/
Nfdnnetdepvsredistdeploy1_1.mspx在這篇文章中提到了幾種不同的方法重新分發.NET框架,其中最簡單的一種應該算是使用VS.NET2003了。大致的步驟如下:
1.安裝VS.NET框架引導程序插件。這個插件可以從微軟的網站上下載,下載地址如下:
http://www.microsoft.com/downloads/details.aspx?familyid=627921a0-d9e7-43d6-a293-72f9c370bd19&displaylang=en2.在 "解決方案資源管理器 "中,用鼠標右鍵單擊安裝和部署項目,在彈出的菜單中選擇 "視圖 "-> "啟動條件 ",打開 "啟動條件 "管理器。
3.在 "啟動條件 "管理器中,右鍵點擊 "目標計算機上的要求 ",在彈出的的菜單中選擇 "添加注冊表啟動條件 "。你會發現在 "搜索目標計算機 "中多了一項 "搜索 RegistryEntry1 ",在 "啟動條件 "中多了一項 "Condition1 "。
4.選擇 "搜索 RegistryEntry1 ",在 "屬性 "對話框中填寫如下內容:
Property:MDACSEARCH
RegKey:Software\Microsoft\DataAccess
Root:vsdrrHKLM
Value:FullInstallVer
選擇 "Condition1 " ,在 "屬性 "對話框中填寫如下內容:
Condition:MDACSEARCH> = "2.6 "
進行這一步是因為在安裝.NET框架的時候需要MDAC。
“C#安裝類如何完整打包”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。