网站建设资讯

NEWS

网站建设资讯

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

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

网站的建设创新互联建站专注网站定制,经验丰富,不做模板,主营网站定制开发.小程序定制开发,H5页面制作!给你焕然一新的设计体验!已为成都办公空间设计等企业提供专业服务。

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

 
 
 
  1. Imports Microsoft.Win32  
  2. Public Class Form1  
  3. Dim KeyUsers As RegistryKey  
  4. '''  
  5. ''' 显示用户列表  
  6. '''  summary> 
  7. '''  name="list">显示用户的列表对象 param> 
  8. '''  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. '''  
  18. ''' 判断用户是否存在  
  19. '''  summary> 
  20. '''  name="username">用户名 param> 
  21. ''' 存在返回true,否则返回false returns> 
  22. '''  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. '''  
  35. ''' 删除用户  
  36. '''  summary> 
  37. '''  name="username">被删除的用户名 param> 
  38. '''  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. '''  
  48. ''' 添加用户  
  49. '''  summary> 
  50. '''  name="username">用户名 param> 
  51. ''' 添加成功返回true,否则返回false returns> 
  52. '''  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遍历注册表键的一个实例,大家快试试吧!


名称栏目:精简代码演示VB.NET遍历注册表键
文章出自:http://cdysf.com/article/coseice.html