欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

SQL數據庫的打包部署安裝

系統 2286 0
本文轉自: http://www.cnitblog.com/eastperson/archive/2007/01/18/22018.html

目的:在客戶端服務器上”附加數據庫文件”。
一).創建部署項目
1. 打開VS.NET2005。
2.在“文件”菜單上指向“新建項目”。
3. 在“新建項目”對話框中,選擇“項目類型”窗格中的”其他項目類型”中的“安裝和部署”,然后選擇“模板”窗格中的“安裝項目”。在“名稱”框中鍵入 Setup1。
4. 單擊“確定”關閉對話框。
5. 項目被添加到解決方案資源管理器中,并且文件系統編輯器打開。如下圖所示:
SQL數據庫的打包部署安裝
6. 在“屬性”窗口中,選擇 ProductName 屬性,并鍵入 數據庫打包安裝。
二).創建安裝程序類
1. 在“解決方案資源管理器”中的”解決方Setup1”上右鍵選擇”添加”后選擇“新建項目”。
2. 在“添加新項目”對話框中,選擇“項目類型”窗格中的“Visual C#”下的”Windows”,然后選擇“模板”窗格中的“類庫”。在“名稱”框中鍵入 InstallDB。
3. 單擊“確定”關閉對話框。
4. 從“InstallDB”類庫下右鍵選擇”添加”中的”新建項”。
5. 在“添加新項”對話框中選擇“安裝程序類”。在“名稱”框中鍵入 InstallDB。
6. 單擊“添加”關閉對話框。
7. “InstallDB”安裝程序類詳細代碼附后。
如下圖所示:
SQL數據庫的打包部署安裝
三).創建自定義安裝對話框
1. 在解決方案資源管理器中選擇“setup1”項目。右鍵然后在“視圖”菜單上選擇“用戶界面”。
2. 在用戶界面編輯器中,選擇“安裝”下的“啟動”節點選擇“添加對話框”。
3 在“添加對話框”對話框中,選擇“文本框 (A)”對話框,然后單擊“確定”關閉對話框。
4. 在“文本框 (A)”右鍵菜單上,選擇“上移”。重復此步驟,直到“文本框 (A)”對話框位于“安裝文件夾”節點之上。
5 在“文本框 (A)”的“屬性”窗口中,選擇 BannerText 屬性并鍵入:安裝數據庫。
6. 選擇 BodyText 屬性并鍵入:安裝程序將在目標機器上安裝數據庫。
7. 選擇 Edit1Label 屬性并鍵入:數據庫名稱:
8 選擇 Edit1Property 屬性并鍵入 DBNAME
9. 選擇 Edit1Value 屬性并鍵入: budgetSysDB
10. 選擇 Edit2Label 屬性并鍵入:服務器名:
11. 選擇 Edit2Property 屬性并鍵入 SERVER
12. 選擇 Edit2Value 屬性并鍵入:(local)
13. 選擇 Edit3Label 屬性并鍵入:用戶名:
13. 選擇 Edit3Value 屬性并鍵入:sa
15. 選擇 Edit3Property 屬性并鍵入 USER
16. 選擇 Edit4Label 屬性并鍵入:密碼:
18. 選擇 Edit4Property 屬性并鍵入 PWD
19. 選擇Edit2Visible 屬性,設置為 false;選擇Edit2Visible、Edit3Visible 和 Edit4Visible 屬性,并將它們設置為 true
SQL數據庫的打包部署安裝
四).創建自定義操作
1. 在解決方案資源管理器中選擇“setup1”項目,右鍵在“視圖”菜單上選擇“自定義操作”。
2. 在自定義操作編輯器中選擇“安裝”節點。右鍵選擇“添加自定義操作”。
3. 在“選擇項目中的項”對話框中,雙擊“應用程序文件夾”。
4. 單擊”添加輸出”按鈕選擇”項目”中的” InstallDB”,在下面框中選擇”主輸出”(此項一般為默認),然后單擊“確定”關閉對話框。
5. 在”主輸出來自InstallDB(活動)的屬性窗口中,選擇 CustomActionData屬性并鍵入:
/dbname=[DBNAME] /server=[SERVER]/user=[USER]/pwd=[PWD]/targetdir="[TARGETDIR]\" ”
附:/targetdir="[TARGETDIR]\"是安裝后的目標路徑,為了在installDB類中獲得安裝后的路徑,我們設置此參數。
?如下圖所示:
SQL數據庫的打包部署安裝
五).添加數據庫文件
1. 在解決方案資源管理器中選擇“Setup1”項目,右鍵在“添加”選擇“文件”。
2.把數據文件”budgetSysDB_Data.MDF”” budgetSysDB_Log.LDF”” budgetDB”添加到” Setup1”。
? 如下圖所示:
SQL數據庫的打包部署安裝
六).”InstallDB”安裝程序類代碼

using ?System;
using ?System.Collections.Generic;
using ?System.ComponentModel;
using ?System.Configuration.Install;
using ?System.Data;
using ?System.Data.SqlClient;

namespace ?InstallDB
{
????[RunInstaller(
true )]
????
public ?partial? class ?InstallerDB?:?Installer
????
{
????????
public ?InstallerDB()
????????
{
????????????InitializeComponent();
????????}

????????
private ? void ?CreateDataBase( string ?strSql,? string ?DataName,? string ?strMdf,? string ?strLdf, string ?path, string ?strSql1)
????????
{
????????????
###?附加數據庫

????????????
###新建數據庫用戶的登陸名和密碼(登陸名:ys2006??密碼:zhouhuan965)

????????????
###把用戶安裝路徑存入數據庫
????????}

????????
public ? override ? void ?Install(System.Collections.IDictionary?stateSaver)
????????
{
????????????
string ?server? = ? this .Context.Parameters[ " server " ];
????????????
string ?uid? = ? this .Context.Parameters[ " user " ];
????????????
string ?pwd? = ? this .Context.Parameters[ " pwd " ];
????????????
string ?path? = ? this .Context.Parameters[ " targetdir " ];
????????????
string ?strSql? = ? " server= " ? + ?server? + ? " ;uid= " ? + ?uid? + ? " ;?pwd= " ? + ?pwd? + ? " ;database=master " ;
????????????
string ?strSql1? = ? " server= " ? + ?server? + ? " ;uid= " ? + ?uid? + ? " ;?pwd= " ? + ?pwd? + ? " ;database=budgetSysDB " ;
????????????
string ?DataName? = ? " budgetSysDB " ;
????????????
string ?strMdf? = ?path? + ? " \\budgetSysDB_Data.MDF " ;? // +?@"\"?+?"+budgetDB1.mdf+";
???????????? string ?strLdf? = ?path? + ? " \\budgetSysDB_Log.LDF " ;? // +@"\"?+?"+budgetDB1.ldf+";
???????????? base .Install(stateSaver);
????????????
this .CreateDataBase(strSql,?DataName,?strMdf,?strLdf,path,strSql1); // 調用上面的方法
????????}

????}

}
====================================================================
本評論轉自: http://blog.csdn.net/lyb_abiandbel/archive/2005/09/05/471672.aspx#477584
CustomActionData 屬性的格式取決于自定義操作的類型。

對于作為安裝組件的自定義操作(ProjectInstaller 類),“CustomActionData”屬性采用 /name=value 形式。其中的每個名稱都必須是唯一的,并且僅有一個值。多個值之間必須用一個空格隔開:/name1=value1 /name2=value2。如果值本身有一個空格,則必須在該值兩側加上引號:/name="a value"。

使用加括號的語法:/name=[PROPERTYNAME],可以傳遞 Windows Installer 屬性。對于像“[TARGETDIR]”這樣返回目錄的 Windows Installer 屬性,除了加括號外,還必須加引號和尾部反斜杠:/name="[TARGETDIR]\"。

注意
為了使自定義操作被視為安裝組件,必須將“InstallerClass”屬性設置為“true”。


對于所有其他自定義操作(.exe、.dll 或腳本)沒有格式要求。可以在 CustomActionData 屬性中傳遞任何字符串,因為您必須自己在自定義操作中對其進行分析。

SQL數據庫的打包部署安裝


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久中文字幕美谷朱里 | 亚洲欧美日韩在线 | 岛国色情A片无码视频免费看 | 好大好爽快点视频 | 91亚洲国产精品 | 九九99久久精品在免费线bt | 美国免费一级片 | 天天操天天射天天操 | 国产成人综合日韩精品婷婷九月 | 精品综合久久久久久99 | 久久久久无码国产精品一区 | 亚洲欧美第一页 | 特级一级毛片免费看 | 99精品视频在线观看免费专区 | 日本道二区视频 | 亚洲欧美国产高清 | 青青草在线免费视频 | 91免费无限观看 | 久久观看| 亚洲欧美日韩中文字幕在线不卡 | 一区二区三区免费视频观看 | 97国产精品| 日本黄色一级片视频 | 欧美经典剧情系列h版在线观看 | 国产日韩欧美在线观看 | 国产精品美女久久久久久免费 | 国产亚洲一区二区精品 | 九九av| 不卡在线一区 | 欧美综合图区亚欧综合图区 | 日韩欧美精品在线 | 奇米色777欧美一区二区 | 久久vs国产综合色大全 | 五月缴情 | 国产综合久久久久影院 | 日韩在线观看精品 | 一男一女的一级毛片 | 色偷偷888欧美精品久久久 | 日本黄色一级片视频 | 亚洲三区在线观看 | 欧美性视频网 |