VB.NET 注册表基本操作
1 ''' <summary> 2 ''' 注册表设置值 3 ''' </summary> 4 ''' <param name="strKey"></param> 5 ''' <param name="strName"></param> 6 ''' <param name="strValue"></param> 7 ''' <returns></returns> 8 ''' <remarks></remarks> 9 Private Function SetRegistry(ByVal strKey As String, ByVal strName As String, ByVal strValue As String) As Boolean 10 Try 11 Dim Key_LocalMachine As Microsoft.Win32.RegistryKey 12 Key_LocalMachine = My.Computer.Registry.LocalMachine 'get the key path of HKEY_LOCAL_MACHINE 13 Dim Key_Created As Microsoft.Win32.RegistryKey 14 Key_Created = Key_LocalMachine.OpenSubKey(strKey, True) 'set the true for can write 15 If Key_Created Is Nothing Then 16 Key_Created = Key_LocalMachine.CreateSubKey(strKey) 'careat the key 17 End If 18 Key_Created.SetValue(strName, strValue) 'set the values of the key 19 Return True 20 Catch ex As Exception 21 Return False 22 End Try 23 End Function 24 ''' <summary> 25 ''' 获取注册表值 26 ''' </summary> 27 ''' <param name="strKey"></param> 28 ''' <param name="strName"></param> 29 ''' <param name="strValue"></param> 30 ''' <returns></returns> 31 ''' <remarks></remarks> 32 Private Function GetValueFromRegistry(ByVal strKey As String, ByVal strName As String, ByRef strValue As String) As Boolean 33 Try 34 Dim Key_LocalMachine As Microsoft.Win32.RegistryKey 35 Key_LocalMachine = My.Computer.Registry.LocalMachine 'get the key path of HKEY_LOCAL_MACHINE 36 Dim Key_Get As Microsoft.Win32.RegistryKey 37 Key_Get = Key_LocalMachine.OpenSubKey(strKey) 38 If Key_Get Is Nothing Then 39 Return False 40 End If 41 strValue = Key_Get.GetValue(strName) 'get the values of the key 42 Return True 43 Catch ex As Exception 44 Return False 45 End Try 46 End Function 47 ''' <summary> 48 ''' 判断值是否存在 49 ''' </summary> 50 ''' <param name="strKey"></param> 51 ''' <param name="strName"></param> 52 ''' <returns></returns> 53 ''' <remarks></remarks> 54 Private Function RegistryExist(ByVal strKey As String, ByVal strName As String) As Boolean 55 Try 56 Dim Key_LocalMachine As Microsoft.Win32.RegistryKey 57 Key_LocalMachine = My.Computer.Registry.LocalMachine 'get the key path of HKEY_LOCAL_MACHINE 58 Dim Key_Exist As Microsoft.Win32.RegistryKey 59 Key_Exist = Key_LocalMachine.OpenSubKey(strKey, True) 'set the true for can write 60 If Key_Exist Is Nothing Then 61 Return False 62 End If 63 If Key_Exist.GetValue(strName) Is Nothing Then 64 Return False 65 End If 66 Return True 67 Catch ex As Exception 68 Return False 69 End Try 70 End Function 71 ''' <summary> 72 ''' 删除注册表对应值 73 ''' </summary> 74 ''' <param name="strKey"></param> 75 ''' <param name="strName"></param> 76 ''' <returns></returns> 77 ''' <remarks></remarks> 78 Private Function DeleteRegistry(ByVal strKey As String, ByVal strName As String) As Boolean 79 Try 80 Dim Key_LocalMachine As Microsoft.Win32.RegistryKey 81 Key_LocalMachine = My.Computer.Registry.LocalMachine 'get the key path of HKEY_LOCAL_MACHINE 82 Dim Key_Del As Microsoft.Win32.RegistryKey 83 Key_Del = Key_LocalMachine.OpenSubKey(strKey, True) 'set the true for can write 84 If Key_Del Is Nothing Then 85 Return False 86 End If 87 Key_Del.DeleteValue(strName) 'delete the values of the key'name 88 Return True 89 Catch ex As Exception 90 Return False 91 End Try 92 End Function
调用:
1 SetRegistry("SOFTWARE\XXXX\DIS-ESS\FTP", "User", "111") 2 Dim temvalue As String = "" 3 GetValueFromRegistry("SOFTWARE\XXXX\DIS-ESS\FTP", "User", temvalue) 4 5 'DeleteRegistry("SOFTWARE\Unisys\DIS-ESS\FTP", "User") 6 7 RegistryExist("SOFTWARE\XXXX\DIS-ESS\FTP", "User")
好的程序员,他们删掉的代码,比留下来的还要多很多。