VB.NET中怎么訪問注冊表,針對這個(gè)問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。
網(wǎng)站制作、做網(wǎng)站的關(guān)注點(diǎn)不是能為您做些什么網(wǎng)站,而是怎么做網(wǎng)站,有沒有做好網(wǎng)站,給創(chuàng)新互聯(lián)建站一個(gè)展示的機(jī)會(huì)來證明自己,這并不會(huì)花費(fèi)您太多時(shí)間,或許會(huì)給您帶來新的靈感和驚喜。面向用戶友好,注重用戶體驗(yàn),一切以用戶為中心。
1、返回或創(chuàng)建一個(gè)注冊表鍵
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),必須指定第二個(gè)參數(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)硞€(gè)項(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、遍歷注冊表
這個(gè)也非常簡單,在窗體上放一個(gè)按鈕和兩個(gè)文本框,添加如下的代碼:
Dim sb As New System.Text.StringBuilder '返回遍歷結(jié)果 Dim sb2 As New System.Text.StringBuilder '返回讀取出錯(cuò)的注冊表鍵 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
關(guān)于VB.NET中怎么訪問注冊表問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。