VB.NET注册表操作相关技巧解析

开发 后端
我们在这里为大家介绍的VB.NET注册表操作方法主要是应用VB.NET来对注册表进行访问。我们可以通过本文内容对此进行详细了解。

大家通过对VB.NET的学习,可以知道,这款编程语言的应用范围是非常广泛的。下面就一起来分析一下VB.NET注册表操作的一些技巧。其实,VB.NET注册表操作是非常的简单。我们可以用 microsoft.Win32 名称空间的 下的 registry 类 和  registryKey 类。 另外 My.Computer.Registry 也可以返回一个 Microsoft.Win32.Registry 类的实例。 #t#

下面就举几个小例子来说明VB.NET注册表操作的方法。

VB.NET注册表操作1,返回或创建一个注册表键

 

  1. Dim Key1 As Microsoft.Win32.
    RegistryKey   
  2. Key1 = My.Computer.Registry.
    CurrentUser '返回当前用户键   
  3. Dim Key2 As Microsoft.Win32.
    RegistryKey   
  4. Key2 = Key1.OpenSubKey("northsnow") 
    '返回当前用户键下的northsnow键   
  5. If Key2 Is Nothing Then   
  6. Key2 = Key1.CreateSubKey("northsnow")
     '如果键不存在就创建它   
  7. End If  

 

VB.NET注册表操作2,删除注册表键

  1. Dim Key1 As Microsoft.Win32.
    RegistryKey   
  2. Key1 = My.Computer.Registry.
    CurrentUser '返回当前用户键   
  3. Dim Key2 As Microsoft.Win32.
    RegistryKey   
  4. Key2 = Key1.OpenSubKey("northsnow") 
    '返回当前用户键下的northsnow键   
  5. If Not Key2 Is Nothing Then   
  6. Key1.DeleteSubKey("northsnow")
     '如果键不存在就创建它   
  7. End If  

VB.NET注册表操作3,创建或读取注册表项

 

  1. Dim Key1 As Microsoft.Win32.RegistryKey   
  2. Key1 = My.Computer.Registry.CurrentUser
     '返回当前用户键   
  3. Dim Key2 As Microsoft.Win32.RegistryKey   
  4. Key2 = Key1.OpenSubKey("northsnow",
     True) '返回当前用户键下的northsnow
    键,如果想创建项,必须指定第二个参数为true   
  5. If Key2 Is Nothing Then   
  6. Key2 = Key1.CreateSubKey("northsnow") 
    '如果键不存在就创建它   
  7. End If  

 

 

  1. '创建项,如果不存在就创建,如果存在则覆盖   
  2. Key2.SetValue("name", "塞北的雪")   
  3. Key2.SetValue("sex", True)   
  4. Key2.SetValue("age", 30)  

 

 

  1. '返回项值   
  2. Dim sb As New System.Text.StringBuilder   
  3. sb.AppendLine(Key2.GetValue("name"))   
  4. sb.AppendLine(Key2.GetValue("sex"))   
  5. sb.AppendLine(Key2.GetValue("age"))   
  6. MsgBox(sb.ToString)  

 

 

  1. '查验某个项是否存在   
  2. If (Key2.GetValue("name")) 
    Is Nothing Then   
  3. MsgBox("no")   
  4. Else   
  5. MsgBox("yes")   
  6. End If  

 

  1. If (Key2.GetValue("name2")) 
    Is Nothing Then   
  2. MsgBox("no")   
  3. Else   
  4. MsgBox("yes")   
  5. End If   
  6. '输出   
  7. ' 塞北的雪   
  8. 'True   
  9. '30   
  10. 'yes   
  11. 'no  

VB.NET注册表操作4,遍历注册表

这个也非常简单,在窗体上放一个按钮和两个文本框,添加如下的代码

 

  1. Dim sb As New System.Text.StringBuilder 
    '返回遍历结果   
  2. Dim sb2 As New System.Text.StringBuilder 
    '返回读取出错的注册表键   
  3. Private Sub Button3_Click()Sub Button3_
    Click(ByVal sender As System.Object, 
    ByVal e As System.EventArgs) Handles 
    Button3.Click   
  4. Dim Key1 As Microsoft.Win32.RegistryKey   
  5. Key1 = My.Computer.Registry.CurrentUser 
    '返回当前用户键   
  6. If Not Key1 Is Nothing Then   
  7. sb.AppendLine(Key1.Name)   
  8. readValue(Key1)   
  9. readReg(Key1)   
  10. End If   
  11. Me.TextBox1.Text = sb.ToString   
  12. Me.TextBox2.Text = sb2.ToString   
  13. End Sub   
  14. '遍历注册表键树   
  15. Private Sub readReg()Sub readReg
    (ByVal r As Microsoft.Win32.RegistryKey)   
  16. If r.SubKeyCount > 0 Then   
  17. Dim keyName() As String   
  18. Dim keyTemp As Microsoft.Win32.RegistryKey   
  19. keyName = r.GetSubKeyNames   
  20. Dim i As Integer   
  21. For i = 0 To keyName.GetLength(0) - 1   
  22. Try   
  23. sb.AppendLine(keyName(i))   
  24. keyTemp = r.OpenSubKey(keyName(i), True)   
  25. readValue(keyTemp)   
  26. readReg(keyTemp)   
  27. Catch ex As Exception   
  28. sb2.AppendLine(keyName(i))   
  29. End Try   
  30. Next   
  31. End If   
  32. End Sub   
  33. '遍历某键下的项   
  34. Private Sub readValue()Sub readValue
    (ByVal r As Microsoft.Win32.RegistryKey)   
  35. If r.ValueCount > 0 Then   
  36. Dim valueName() As String   
  37. Dim i As Integer   
  38. valueName = r.GetValueNames   
  39. For i = 0 To valueName.GetLength(0) - 1   
  40. sb.AppendLine("####")   
  41. sb.Append(r.Name)   
  42. sb.Append("----")   
  43. sb.Append(r.GetValue(valueName(i))
    .ToString)   
  44. Next   
  45. End If   
  46. End Sub 

VB.NET注册表操作的一些实际应用技巧就为大家介绍到这里。

责任编辑:曹凯 来源: 博客园
相关推荐

2010-01-11 18:40:03

VB.NET操作注册表

2009-10-12 16:08:14

VB.NET访问注册表

2009-10-16 09:40:54

VB.NET访问注册表

2009-11-10 17:31:38

VB.NET注册表

2009-10-26 14:50:18

VB.NET遍历注册表

2009-10-26 13:46:31

VB.NET注册表权限

2010-01-18 13:57:38

VB.NET读写注册表

2010-01-13 10:25:30

VB.NET文件夹操作

2010-01-13 15:33:40

VB.NET菜单项目

2010-01-15 13:52:42

VB.NET属性设置

2010-01-07 17:24:12

VB.NET连接数据库

2010-01-19 15:08:18

VB.NET对象成员

2010-01-08 14:07:47

VB.NET窗体传值

2010-01-15 19:04:09

2010-01-15 15:10:43

VB.NET Stri

2010-01-14 16:04:32

VB.NET显示时间

2010-10-20 17:14:03

SQL Server管

2009-11-02 10:30:37

VB.NET EXCE

2010-01-22 16:07:26

VB.NET Mid函

2010-01-18 14:54:00

VB.NET共享成员变
点赞
收藏

51CTO技术栈公众号