国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

在VB.NET中如何快速訪問注冊表的技巧 代碼

瀏覽:140日期:2022-06-05 17:04:50

vb.net中訪問注冊表變得非常的簡單。我們可以用microsoft.Win32 名稱空間的下的registry類和registryKey類。另外My.Computer.Registry 也可以返回一個Microsoft.Win32.Registry類的實(shí)例。
  下面就舉幾個小例子來說明vb.net訪問注冊表的方法。
  1、返回或創(chuàng)建一個注冊表鍵

  Dim Key1 As Microsoft.Win32.RegistryKey
Key1 = My.Computer.Registry.CurrentUser "返回當(dāng)前用戶鍵
Dim Key2 As Microsoft.Win32.RegistryKey
Key2 = Key1.OpenSubKey("northsnow") "返回當(dāng)前用戶鍵下的northsnow鍵
If Key2 Is Nothing Then
Key2 = Key1.CreateSubKey("northsnow") "如果鍵不存在就創(chuàng)建它
End If

  2、刪除注冊表鍵

  Dim Key1 As Microsoft.Win32.RegistryKey
Key1 = My.Computer.Registry.CurrentUser "返回當(dāng)前用戶鍵
Dim Key2 As Microsoft.Win32.RegistryKey
Key2 = Key1.OpenSubKey("northsnow") "返回當(dāng)前用戶鍵下的northsnow鍵
If Not Key2 Is Nothing Then
Key1.DeleteSubKey("northsnow") "如果鍵不存在就創(chuàng)建它
End If

  3、創(chuàng)建或讀取注冊表項(xiàng)  

  Dim Key1 As Microsoft.Win32.RegistryKey
Key1 = My.Computer.Registry.CurrentUser "返回當(dāng)前用戶鍵
Dim Key2 As Microsoft.Win32.RegistryKey
Key2 = Key1.OpenSubKey("northsnow", True) "返回當(dāng)前用戶鍵下的northsnow鍵,

  如果想創(chuàng)建項(xiàng),必須指定第二個參數(shù)為true
If Key2 Is Nothing Then
Key2 = Key1.CreateSubKey("northsnow") "如果鍵不存在就創(chuàng)建它
End If
"創(chuàng)建項(xiàng),如果不存在就創(chuàng)建,如果存在則覆蓋
Key2.SetValue("name", "塞北的雪")
Key2.SetValue("sex", True)
Key2.SetValue("age", 30)
"返回項(xiàng)值
Dim sb As New System.Text.StringBuilder
sb.AppendLine(Key2.GetValue("name"))
sb.AppendLine(Key2.GetValue("sex"))
sb.AppendLine(Key2.GetValue("age"))
MsgBox(sb.ToString)
"查驗(yàn)?zāi)硞€項(xiàng)是否存在
If (Key2.GetValue("name")) Is Nothing Then
MsgBox("no")
Else
MsgBox("yes")
End If
If (Key2.GetValue("name2")) Is Nothing Then
MsgBox("no")
Else
MsgBox("yes")
End If

  "輸出
" 塞北的雪
"True
"30
"yes
"no


4、遍歷注冊表
  這個也非常簡單,  在窗體上放一個按鈕和兩個文本框,添加如下的代碼:

  Dim sb As New System.Text.StringBuilder "返回遍歷結(jié)果
Dim sb2 As New System.Text.StringBuilder "返回讀取出錯的注冊表鍵
Private Sub Button3_Click()Sub Button3_Click(ByVal sender As System.Object,

  ByVal e As System.EventArgs) Handles Button3.Click
Dim Key1 As Microsoft.Win32.RegistryKey
Key1 = My.Computer.Registry.CurrentUser "返回當(dāng)前用戶鍵
If Not Key1 Is Nothing Then
sb.AppendLine(Key1.Name)
readValue(Key1)
readReg(Key1)
End If
Me.TextBox1.Text = sb.ToString
Me.TextBox2.Text = sb2.ToString
End Sub
"遍歷注冊表鍵樹
Private Sub readReg()Sub readReg(ByVal r As Microsoft.Win32.RegistryKey)
If r.SubKeyCount > 0 Then
Dim keyName() As String
Dim keyTemp As Microsoft.Win32.RegistryKey
keyName = r.GetSubKeyNames
Dim i As Integer
For i = 0 To keyName.GetLength(0) - 1
Try
sb.AppendLine(keyName(i))
keyTemp = r.OpenSubKey(keyName(i), True)
readValue(keyTemp)
readReg(keyTemp)
Catch ex As Exception
sb2.AppendLine(keyName(i))
End Try
Next
End If
End Sub
"遍歷某鍵下的項(xiàng)
Private Sub readValue()Sub readValue(ByVal r As Microsoft.Win32.RegistryKey)
If r.ValueCount > 0 Then
Dim valueName() As String
Dim i As Integer
valueName = r.GetValueNames
For i = 0 To valueName.GetLength(0) - 1
sb.AppendLine("####")
sb.Append(r.Name)
sb.Append("----")
sb.Append(r.GetValue(valueName(i)).ToString)
Next
End If
End Sub

 

標(biāo)簽: 注冊表 快速訪問 注冊表
相關(guān)文章:
主站蜘蛛池模板: 当涂县| 汉沽区| 亳州市| 高雄市| 东方市| 洞口县| 南澳县| 揭西县| 呼伦贝尔市| 高雄市| 宜宾县| 崇义县| 建水县| 江源县| 科技| 盈江县| 珲春市| 岢岚县| 蓬莱市| 黔西县| 卢龙县| 靖西县| 汉源县| 高雄市| 云龙县| 丘北县| 察哈| 基隆市| 临夏县| 尉氏县| 芜湖县| 特克斯县| 金塔县| 高州市| 逊克县| 永川市| 友谊县| 雷州市| 荣成市| 临夏市| 哈巴河县|