精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

VB.NET安裝工程具體應用方法解析

開發(fā) 后端
VB.NET安裝工程的用法是比較簡單的。初學者們完全可以按照這里介紹的代碼編寫方式來實現(xiàn)這一功能。并幫助大家加深對這一語言的印象。

VB.NET是由微軟推出的一款功能強大的,具有面向?qū)ο筇匦缘木幊陶Z言。它可以幫助我們打造出一個安全穩(wěn)定的編程環(huán)境,提高編程效率。我們將會在這篇文章為大家詳細介紹一下有關VB.NET安裝工程的相關概念。

剛聽了SMART CLIENT部署的講座,里面詳細講述了如果在VB.NET安裝工程里運行自定義的DLL或者EXE,以后在自定義的工程中如何得到安裝工程的傳遞過來的參數(shù)。下面大致說一下自己的心得:

首先,是制作一個類工程。然后添加一個安裝類文件,并添加一個SQL.TXT文件,當作嵌入的資源,類的代碼如下,在后面再做說明:

  1. Dim Cn As SqlConnection  
  2. '得到SQL腳本字符串  
  3. Private Function GetSql(ByVal Name As String) As String  
  4. Try  
  5. '通過反射取到程序集  
  6. Dim Asm As [Assembly] = [Assembly].GetExecutingAssembly()  
  7. '讀取資源文件資料,要將資源文件在編譯時設成嵌入的資源  
  8. Dim Sm As Stream = Asm.GetManifestResourceStream
    (Asm.GetName().Name + "." + Name)  
  9. Dim Rr As New StreamReader(Sm)  
  10. Return Rr.ReadToEnd  
  11. Catch ex As Exception  
  12. MsgBox(Err.Description, MsgBoxStyle.OKOnly, "出錯提示")  
  13. Throw ex  
  14. End Try  
  15. End Function  
  16. '得到數(shù)據(jù)庫備份文件路徑  
  17. Private Function GetBakFilePath
    (ByVal DatFileName As String) As String  
  18. Try  
  19. '通過反射取到程序集  
  20. Dim Asm As [Assembly] = [Assembly].GetExecutingAssembly()  
  21. '讀取資源文件資料,要將資源文件在編譯時設成嵌入的資源  
  22. Dim Sm As Stream = Asm.GetManifestResourceStream
    (Asm.GetName().Name + "." + DatFileName)  
  23. If File.Exists("c:\" & DatFileName) Then  
  24. File.Delete("c:\" & DatFileName)  
  25. End If  
  26. Dim Fs As New FileStream("c:\" & DatFileName, FileMode.Create)  
  27. Dim Sw As New BinaryWriter(Fs)  
  28. Dim recbyte(Sm.Length - 1) As Byte  
  29. Dim strread As New BinaryReader(Sm)  
  30. strread.Read(recbyte, 0, recbyte.Length)  
  31. Sw.Write(recbyte, 0, recbyte.Length)  
  32. Sw.Close()  
  33. Fs.Close()  
  34. Return "C:\" & DatFileName  
  35. Catch ex As Exception  
  36. MsgBox(Err.Description, MsgBoxStyle.OKOnly, "出錯提示")  
  37. Throw ex  
  38. End Try  
  39. End Function  
  40. Private Sub ExecuteSql(ByVal DbName As String, 
    ByVal SqlText As String, ByVal uid As String, 
    ByVal pwd As String, ByVal servername As String)  
  41. Dim cmd As New SqlCommand(SqlText, Cn)  
  42. If Cn.State = ConnectionState.Closed Then Cn.Open()  
  43. Try  
  44. Cn.ChangeDatabase(DbName)  
  45. cmd.ExecuteNonQuery()  
  46. Catch ex As Exception  
  47. MsgBox("運行SQL腳本出錯!", MsgBoxStyle.OKOnly, "提示")  
  48. Throw ex  
  49. End Try  
  50. Cn.Close()  
  51. End Sub  
  52. Protected Sub AddDBTable(ByVal DBName As String, 
    ByVal uid As String, ByVal pwd As String, ByVal servername As String)  
  53. '判斷數(shù)據(jù)庫是否存在  
  54. Try  
  55. Cn = New SqlConnection("Persist Security Info=False;
    User 
    ID=" & uid & ";Initial Catalog=master;
    Data 
    Source=" & servername & ";password=" & pwd & ";Max Pool Size=75000")  
  56. Dim Dt As New DataTable()  
  57. Cn.Open()  
  58. Dim cmd As New SqlDataAdapter()  
  59. cmd.SelectCommand = New SqlCommand("exec sp_helpdb", Cn)  
  60. cmd.Fill(Dt)  
  61. Dim i As Int16  
  62. For i = 0 To Dt.Rows.Count - 1  
  63. If DBName.ToLower = CType(Dt.Rows(i).Item(0), String).ToLower Then  
  64. '數(shù)據(jù)庫存在  
  65. cmd = Nothing 
  66. Cn.Close()  
  67. Exit Sub  
  68. End If  
  69. Next  
  70. Catch ex As Exception  
  71. MsgBox(Err.Description & "連接數(shù)據(jù)庫出錯,請檢查所輸入的參數(shù)是否正確!",
     MsgBoxStyle.OKOnly, "出錯提示")  
  72. Exit Sub '如已存在則跳出  
  73. End Try  
  74. Try  
  75. '========方法一:運行SQL腳本創(chuàng)建數(shù)據(jù)庫  
  76. ' ExecuteSql("Master", "Create DataBase " & DBName, uid, pwd, servername)  
  77. 'ExecuteSql(DBName, GetSql("mysql.txt"), uid, pwd, servername)  
  78. '========方法二:執(zhí)行還原備份文件  
  79. Dim cm As New ADODB.Command()  
  80. Dim cn As New ADODB.Connection()  
  81. Dim dbrs As New ADODB.Recordset()  
  82. cn.Open("Provider=SQLOLEDB.1;Persist Security Info=False;
    User 
    ID=" & uid & ";Initial Catalog=master;
    Data 
    Source=" & servername & ";password=" & pwd)  
  83. cm.ActiveConnection = cn 
  84. '判斷該數(shù)據(jù)是否存在,存在就刪除  
  85. cm.CommandText = "exec sp_helpdb" 
  86. dbrs = cm.Execute() '取所有數(shù)據(jù)庫名  
  87. If Not dbrs.BOF And Not dbrs.EOF Then  
  88. Do While Not dbrs.EOF  
  89. If Trim(dbrs.Fields(0).Value) = Trim(DBName) Then '如果該數(shù)據(jù)庫存  
  90. cm.CommandText = "drop database " & Trim(DBName)  
  91. cm.Execute()  
  92. Exit Do  
  93. End If  
  94. dbrs.MoveNext()  
  95. Loop  
  96. End If  
  97. ' dbrs.Close()  
  98. Dim Sfile As String = GetBakFilePath("installdb.dat")  
  99. cm.CommandText = "restore database " & Trim(DBName) & " from DISK='" & Trim(Sfile) & "'"  
  100. cm.Execute()  
  101. cn.Close()  
  102. If File.Exists(Sfile) Then  
  103. File.Delete(Sfile)  
  104. End If  
  105. Catch ex As Exception  
  106. MsgBox(Err.Description & "A", MsgBoxStyle.OKOnly, "出錯提示")  
  107. Throw ex  
  108. End Try  
  109. End Sub  
  110. '覆寫安裝方法  
  111. Public Overrides Sub Install(ByVal stateSaver As System.Collections.IDictionary)  
  112. MyBase.Install(stateSaver)  
  113. '取安裝程序中用戶界面中添回的文本框中的參數(shù)值  
  114. Dim Connstr As String = Me.Context.Parameters.Item("dbname")  
  115. Dim Cs As String() = Split(Connstr, "|")  
  116. AddDBTable(Cs(0), Cs(1), Cs(2), Cs(3))  
  117. End Sub 

 

然后添加一個VB.NET安裝工程,將上面的類的工程做為項目主輸出添進來.在用戶界面中加一個文本框#t#

然后在文本框的四個屬性中輸入?yún)?shù)名稱..

這里設置了四個參數(shù),在安裝運行的時候,會有界面讓你輸入四個參數(shù),在自定義操作里的安裝項目上,將所加載進來的項目主輸入選中置入.

并將屬性CustomActionData設置為/參數(shù)名=[][][][]...以這種方式寫入在文件框中設置好的參數(shù),我們再看一下上面類中的代碼:

  1. Dim Connstr As String = Me.Context.Parameters.Item("dbname") 

便會取到參數(shù)dbname的值,亦就是在安裝界面時要用戶輸入的值.

類中還覆寫了Install方法.會自動運行,并執(zhí)行用戶自定義的程序代碼.代碼與平時所編的vbNET一樣.

上面的VB.NET安裝工程代碼做了二種情況,一種是從嵌入的文本文件中取得SQL語句,運行它創(chuàng)建數(shù)據(jù)庫.另一種是用SQL數(shù)據(jù)備份的DAT文件做為嵌入資源,在安裝過程中,由用戶輸入的參數(shù)為條件,連接SQL服務器并還原數(shù)據(jù)庫...

責任編輯:曹凱 來源: wewill.cn
相關推薦

2010-01-21 18:19:45

VB.NET條件編譯

2009-11-02 16:05:51

VB.NET安裝工程

2010-01-21 17:48:25

VB.NET Sing

2010-01-18 19:04:29

VB.NET組件疊加

2010-01-19 16:55:46

VB.NET聲明語句

2009-10-09 15:59:41

VB.NET對象

2010-01-22 16:07:26

VB.NET Mid函

2010-01-11 17:40:36

VB.NET相框效果

2010-01-21 16:37:56

VB.NET變量聲明

2010-01-07 15:25:11

VB.NET數(shù)組

2010-01-20 17:41:13

VB.NET標記語句

2009-10-27 11:16:20

VB.NET應用框架

2010-01-15 16:12:40

VB.NET調(diào)用DLL

2010-01-13 16:45:44

VB.NET刪除控件

2010-01-18 18:06:07

VB.NET多線程

2010-01-07 16:51:56

VB.NET窗體鉤子

2010-01-18 14:35:11

VB.NET讀取內(nèi)存

2010-01-13 17:16:37

VB.NET冒號

2010-01-13 09:45:53

VB.NET Arra

2010-01-12 16:20:44

VB.NET類
點贊
收藏

51CTO技術棧公眾號

久久人妻一区二区| 久久久久久久久久久综合| 亚洲另类在线观看| 成人情趣视频网站| 欧美一区二视频| 波多野结衣家庭教师在线| 国产粉嫩一区二区三区在线观看| 精品一区二区久久久| 国内偷自视频区视频综合| 国产又粗又猛又爽又黄av| 久久精品免视看国产成人| 福利二区91精品bt7086| eeuss中文| 久久精品a一级国产免视看成人| 精品夜夜嗨av一区二区三区| 97视频在线观看成人| 午夜三级在线观看| 思热99re视热频这里只精品| 91精品国产一区二区三区香蕉| av天堂永久资源网| 91在线中文| 国产人妖乱国产精品人妖| 国产精品区免费视频| 一级α片免费看刺激高潮视频| 亚洲精选久久| 欧美美最猛性xxxxxx| x88av在线| 欧美黄色网视频| 日韩视频中午一区| 天天色综合社区| 色老太综合网| 精品国产乱码久久久久久天美 | 国产精品777| 日韩精品在线不卡| 欧美日韩一区自拍| 久久精品99久久久久久久久| 手机免费看av| 色婷婷综合久久久久久| 亚洲福利视频免费观看| 在线免费黄色小视频| 欧美jizz18| 欧美日韩精品欧美日韩精品一| 成年人网站大全| 黄色综合网址| 色综合久久88色综合天天 | 毛片在线网址| 一区二区三区中文在线| 日本道在线视频| av中文字幕在线观看| 亚洲色图视频网站| 欧美 另类 交| www在线免费观看视频| 亚洲人亚洲人成电影网站色| 亚洲欧美一区二区原创| 成人免费视频| 成人欧美一区二区三区白人| 综合色婷婷一区二区亚洲欧美国产| 国产黄色在线| 国产精品国产三级国产专播品爱网| 婷婷久久青草热一区二区| 国产乱视频在线观看| 久久精品亚洲乱码伦伦中文| 青青草成人激情在线| 99re在线视频| 亚洲人成影院在线观看| 国内自拍中文字幕| 97人澡人人添人人爽欧美| 天天影视网天天综合色在线播放| 免费在线观看亚洲视频| 中文字幕在线直播| 欧美性受xxxx黑人xyx| 欧美第一页浮力影院| 久久一级大片| 精品国产一区二区三区不卡| 波多野结衣影院| 国产亚洲一卡2卡3卡4卡新区 | 国内精品免费在线观看| 亚洲综合成人婷婷小说| 欧美熟妇交换久久久久久分类 | www在线看| 精品久久久久人成| 国产精品天天av精麻传媒| 美女久久久久久| 精品欧美黑人一区二区三区| 女尊高h男高潮呻吟| 欧美日韩一二| 欧美国产日韩中文字幕在线| 国产中文字幕视频| 毛片不卡一区二区| 电影午夜精品一区二区三区| 精品无吗乱吗av国产爱色| 中文字幕日本不卡| 99精品在线免费视频| 激情久久99| 欧美精品一区视频| 国产传媒视频在线| 精久久久久久| 91精品视频免费观看| 亚洲AV成人无码一二三区在线| 国产精品免费丝袜| koreanbj精品视频一区| 成人午夜888| 精品视频偷偷看在线观看 | 亚洲成人777| 69久久久久久| 婷婷综合福利| 久久久久久久激情视频| 涩涩视频在线观看| gogo大胆日本视频一区| 一本一生久久a久久精品综合蜜| www在线看| 欧美一区二区三区人| 欧美 日韩 国产 成人 在线观看| 狠色狠色综合久久| 国产精品视频免费在线观看| 色欲av伊人久久大香线蕉影院| 国产精品免费久久| 天天摸天天碰天天添| 成人福利一区| 欧美成人一二三| 91丨porny丨在线中文 | 色屁屁影院www国产高清麻豆| 国精产品一区一区三区mba视频 | 中文字幕亚洲综合久久五月天色无吗'' | 欧美丰满老妇熟乱xxxxyyy| 精品91在线| 91在线视频成人| av网页在线| 日本韩国欧美在线| jizz欧美性20| 影音先锋国产精品| 波多野结衣久草一区| 免费av在线播放| 欧美日韩美少妇| www在线观看免费视频| 亚洲一区成人| 久久波多野结衣| 国模精品视频| 亚洲精品美女在线观看播放| 日韩欧美性视频| jvid福利写真一区二区三区| 亚洲精品蜜桃久久久久久| 一区中文字幕电影| 欧美大片免费观看在线观看网站推荐| 国产乱子伦精品无码码专区| 国产精品夫妻自拍| 91国内在线播放| 国产精品99一区二区三区| 国产视频999| 黄网站在线播放| 这里是久久伊人| 天天干天天操天天拍| 秋霞影院一区二区| 亚洲午夜精品久久| 久久的色偷偷| 欧美精品激情在线观看| 日韩一卡二卡在线| 福利精品视频在线| 中文字幕一二三四区| 日韩精彩视频在线观看| 在线视频不卡一区二区三区| 粉嫩av国产一区二区三区| 欧美精品免费看| 亚洲国产欧美另类| 五月激情六月综合| 一级片视频免费看| 美女性感视频久久| 99亚洲国产精品| 欧美激情99| 国产精品男人的天堂| 日本韩国在线视频爽| 欧美一卡在线观看| 亚洲国产精一区二区三区性色| 96av麻豆蜜桃一区二区| 日本999视频| 欧美国内亚洲| 欧美不卡三区| 高清不卡一区| 91sa在线看| 最新真实国产在线视频| 亚洲精品在线三区| 亚洲精品国产无码| 亚洲欧美国产高清| 性久久久久久久久久| 久久激情五月激情| 热99这里只有精品| 久久视频在线| 国产高清一区视频| 日韩中文影院| 欧美激情综合色| h视频在线观看免费| 欧美v日韩v国产v| 久久久久久亚洲av无码专区| 亚洲一卡二卡三卡四卡无卡久久| 国产交换配乱淫视频免费| 久久aⅴ国产欧美74aaa| 国产精品久久中文字幕| 国产精品久久久久蜜臀| 美女被啪啪一区二区| 国产高清视频一区二区| 欧美一级高清免费| 1024在线播放| 色悠悠国产精品| 国产精品国产高清国产| 欧美大片拔萝卜| 一本色道久久综合亚洲| 欧美性精品220| 久艹视频在线观看| 国产精品久久久久影院色老大| 国产国语老龄妇女a片| 美女视频黄 久久| 国产素人在线观看| 欧美精品福利| 亚洲一区二区三区四区中文| 亚州av一区| 国产一区喷水| 亚洲免费一区三区| 国产一区二区丝袜高跟鞋图片| 刘亦菲一区二区三区免费看| 久久久久久com| 成人免费高清| 色av中文字幕一区| 番号集在线观看| 亚洲人成在线观看网站高清| 熟妇人妻av无码一区二区三区 | 无码精品视频一区二区三区| 日韩一区二区在线观看视频播放| 在线免费观看av片| 欧美这里有精品| 日韩不卡高清视频| 色悠悠久久综合| 青青青国产在线 | 日日夜夜精品视频| 国产在线观看精品| 玖玖精品在线| 成人激情av在线| 国产高清亚洲| 不卡一区二区三区视频| 深夜福利一区二区三区| 69174成人网| www.爱久久| 国产精品久久久久久久久久直播 | 不卡大黄网站免费看| 国产sm在线观看| 成人一区在线观看| 日本美女视频网站| av电影天堂一区二区在线| 中文字幕 日本| 99国产精品久久久久| 亚洲欧美日本一区| www精品美女久久久tv| 少妇特黄一区二区三区| 久久九九全国免费| 成人激情五月天| 国产精品国产三级国产普通话三级| 天海翼在线视频| 亚洲精品中文字幕乱码三区 | 日本a在线播放| 最近2019好看的中文字幕免费| 日韩精品成人av| 欧美xxxx综合视频| 伦理在线一区| 日本中文字幕成人| 免费视频成人| 成人av电影免费| 日本午夜精品| 性欧美videosex高清少妇| 国产精品久久久久久久| 日本一区午夜艳熟免费| 亚洲男女自偷自拍| 免费看污污网站| 国产精品99久久久久久似苏梦涵| 成人欧美精品一区二区| 91丨九色丨蝌蚪丨老版| 夫妇露脸对白88av| 亚洲综合自拍偷拍| 无码人妻久久一区二区三区 | 丰满熟妇乱又伦| 日韩精品在线私人| 自拍视频在线播放| 久久久久中文字幕2018| 色老太综合网| 亚洲最大福利视频| 亚洲精品无吗| 午夜在线视频免费观看| aa国产精品| 中文字幕 日韩 欧美| 成人av在线播放网址| 欧美黄色一级生活片| 一区二区三区四区视频精品免费 | 久久综合九色综合久99| 成人影视亚洲图片在线| 欧美精品卡一卡二| 麻豆精品一区二区| 水蜜桃av无码| 日韩一区在线播放| 超碰在线观看91| 欧美精品一区二区三区久久久| 国产精品免费播放| 午夜精品久久久久久久久久久久 | 免费黄在线观看| 亚洲成av人综合在线观看| 亚洲性在线观看| 精品一区二区三区三区| www免费在线观看| 国产精品久久久久久久一区探花| 久久影院资源站| 免费cad大片在线观看| 蜜桃av噜噜一区| 国产三级国产精品| 亚洲综合丁香婷婷六月香| 91资源在线视频| 亚洲欧洲在线播放| 美女网站在线看| 国产福利不卡| 影音先锋日韩精品| 欧美wwwwwww| 国产天堂亚洲国产碰碰| 狠狠躁夜夜躁人人爽天天高潮| 欧美一卡2卡3卡4卡| 日本免费视频在线观看| 国产精品7m视频| 久久不见久久见免费视频7| 国产 日韩 欧美在线| 国产成人aaa| 日韩在线中文字幕视频| 欧美日韩国产电影| 成人在线观看网站| 日韩av片永久免费网站| 秋霞综合在线视频| 成人黄色av片| 成人午夜电影网站| 久草视频在线免费看| 欧美一区二区三区免费观看视频| 日本电影全部在线观看网站视频| 国产精品免费福利| 欧美码中文字幕在线| 日本中文字幕片| 91免费观看在线| 国产伦精品一区二区三区视频网站 | 别急慢慢来1978如如2| 久久久综合九色合综国产精品| 欧美一区二区三区四| 日韩国产欧美区| 中文字幕一区久| 日本精品二区| 日韩国产在线一| 青青操在线播放| 欧美丰满一区二区免费视频| 看黄网站在线| 丁香婷婷久久久综合精品国产| 欧美日韩精品| 尤物网站在线观看| 欧美午夜激情在线| 国产主播福利在线| 国产精品日日做人人爱| 久久久久电影| 人妻巨大乳一二三区| 亚洲一区二区三区四区在线观看| 亚洲精品久久久蜜桃动漫 | 欧美日韩午夜电影网| 精品人妻人人做人人爽| 99久久免费精品高清特色大片| 久久精品无码av| 色一情一乱一区二区| 视频一区日韩精品| 日韩激情免费视频| 日本一区免费视频| 国产三级伦理片| 91精品国产91| 欧美精品色图| 91精品人妻一区二区三区四区| 动漫精品一区二区| av电影在线观看一区二区三区| 91超碰rencao97精品| 亚洲美洲欧洲综合国产一区| 老头老太做爰xxx视频| 91精品国产综合久久久蜜臀粉嫩 | 国产精品久久久久久久av大片| 国产精品毛片久久| 亚洲精品国产成人av在线| 欧美性videosxxxxx| av在线免费网址| 久久涩涩网站| 精品一区二区三区av| www..com国产| 日韩亚洲在线观看| 欧美18xxxx| 国产5g成人5g天天爽| 精品美女永久免费视频| 色开心亚洲综合| 久久精品日产第一区二区三区乱码 | 国产日产精品一区二区三区四区的观看方式| 亚洲精品免费一区亚洲精品免费精品一区| 亚洲一区二区三区四区在线| 国产视频网站在线| 国产精品美女黄网| 裸体在线国模精品偷拍| 国产www在线| 欧美日韩成人在线播放|