精简代码演示VB.NET遍历注册表键

开发 后端
很多人都遇到过遍历的问题,文章主要是VB.NET遍历注册表键的代码演示,代码例如:Imports Microsoft.Win32 Public Class Form1 Dim KeyUsers As RegistryKey ...。

大家都遇到过遍历的问题,你拿到了数据就要对它进行遍历才能读出来,在这里我给大家演示一个VB.NET遍历注册表键,并且提供添加,修改,删除键及键的用户。

VB.NET遍历注册表代码如下:

  1. Imports Microsoft.Win32  
  2. Public Class Form1  
  3. Dim KeyUsers As RegistryKey  
  4. ''' <summary> 
  5. ''' 显示用户列表  
  6. ''' summary> 
  7. ''' <param name="list">显示用户的列表对象param> 
  8. ''' <remarks>remarks> 
  9. Private Sub ListAllUsers(ByVal list As ListBox)  
  10. '清除列表中的内容  
  11. list.Items.Clear()  
  12. '遍历用户键下的子键  
  13. For Each keyname As String In KeyUsers.GetSubKeyNames()  
  14. list.Items.Add(keyname)  
  15. Next  
  16. End Sub  
  17. ''' <summary> 
  18. ''' 判断用户是否存在  
  19. ''' summary> 
  20. ''' <param name="username">用户名param> 
  21. ''' <returns>存在返回true,否则返回falsereturns> 
  22. ''' <remarks>remarks> 
  23. Private Function IsUserExists(ByVal username As String) As Boolean  
  24. '遍历用户键下的子键  
  25. For Each keyname As String In KeyUsers.GetSubKeyNames()  
  26. '如果用户存在返回true  
  27. If (keyname.ToUpper() = username.ToUpper()) Then  
  28. Return True  
  29. End If  
  30. Next  
  31. Return False  
  32. End Function  
  33.  
  34. ''' <summary> 
  35. ''' 删除用户  
  36. ''' summary> 
  37. ''' <param name="username">被删除的用户名param> 
  38. ''' <remarks>remarks> 
  39. Private Sub DeleteUser(ByVal username As String)  
  40. If (IsUserExists(username)) Then  
  41. '删除该用户对应的键  
  42. KeyUsers.DeleteSubKey(username)  
  43. ListAllUsers(ListBox1)  
  44. End If  
  45. End Sub  
  46. '更多vb.net源代码和实例,请关注乐博网lob.cn  
  47. ''' <summary> 
  48. ''' 添加用户  
  49. ''' summary> 
  50. ''' <param name="username">用户名param> 
  51. ''' <returns>添加成功返回true,否则返回falsereturns> 
  52. ''' <remarks>remarks> 
  53. Private Function AddUser(ByVal username As String) As Boolean  
  54. Try  
  55. '判断用户是否存在  
  56. If (IsUserExists(username)) Then  
  57. MsgBox("用户已经存在,请输入其它用户!")  
  58. Return False  
  59. End If  
  60. '创建用户键  
  61. KeyUsers.CreateSubKey(username, _  
  62. RegistryKeyPermissionCheck.ReadWriteSubTree)  
  63. '重新列表  
  64. ListAllUsers(ListBox1)  
  65. Catch ex As Exception  
  66. Return False  
  67. End Try  
  68. End Function  
  69. Private Sub btnCreateKey_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCreateKey.Click  
  70. Dim key As RegistryKey  
  71. Dim mykey As RegistryKey  
  72. '首先需要获得HKEY_CURRENT_USER\Softwar子键,将writable设置为True确保可写  
  73. key = My.Computer.Registry.CurrentUser.OpenSubKey("Software", True)  
  74. '在HKEY_CURRENT_USER\Softwar下面创建子键并返回创建的子键对象  
  75. mykey = key.CreateSubKey("MyKey", RegistryKeyPermissionCheck.ReadWriteSubTree)  
  76. '创建值并且设置值的内容  
  77. mykey.SetValue("UserName", "Rui.Chen", RegistryValueKind.String)  
  78. End Sub  
  79. Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged  
  80. If (ListBox1.SelectedIndex >= 0) Then  
  81. btnDelete.Enabled = True 
  82. Else  
  83. btnDelete.Enabled = False 
  84. End If  
  85. End Sub  
  86. Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click  
  87. DeleteUser(ListBox1.SelectedItem.ToString())  
  88. End Sub  
  89. Private Sub btnCreate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCreate.Click  
  90. If (TextBox1.Text <> "") Then  
  91. AddUser(TextBox1.Text)  
  92. End If  
  93. End Sub  
  94. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load  
  95. KeyUsers = My.Computer.Registry.CurrentUser.OpenSubKey("Software\MyKey", True)  
  96. ListAllUsers(ListBox1)  
  97. btnDelete.Enabled = False 
  98. End Sub  
  99. End Class 

以上是关于VB.NET遍历注册表键的一个实例,大家快试试吧!

【编辑推荐】

  1. 剖析VB.NET平台调用是如何执行操作
  2. 分享个人总结VB.NET多线程
  3. 详细说明VB.NET变量中四点
  4. 三类十二种VB.NET数据类型全面介绍
  5. VB.NET初步知识,初学者必看
责任编辑:田树 来源: 乐博网
相关推荐

2009-10-12 16:08:14

VB.NET访问注册表

2009-10-16 09:40:54

VB.NET访问注册表

2010-01-11 18:40:03

VB.NET操作注册表

2010-01-08 10:09:50

VB.NET注册表操作

2009-11-10 17:31:38

VB.NET注册表

2009-10-26 13:46:31

VB.NET注册表权限

2010-01-18 13:57:38

VB.NET读写注册表

2009-11-03 11:06:40

VB.NET事件

2009-10-29 13:46:14

VB.NET DES加

2009-11-02 09:45:23

VB.NET文件系统对

2009-10-27 10:58:00

VB.NET文件名排序

2009-10-28 15:18:46

VB.NET网络应用

2009-10-26 10:30:57

VB.NET处理FTP

2009-10-26 09:50:20

VB.NET Star

2009-10-26 11:04:36

VB.NET UDP协

2009-10-27 14:05:59

VB.NET程序

2009-10-23 14:31:05

VB.NET类定义

2010-01-11 17:16:48

VB.NET快捷键

2011-08-04 11:11:59

2010-01-13 09:31:39

VB.NET窗体打印
点赞
收藏

51CTO技术栈公众号