vb.net下对注册表的各种操作
发表于:2007-06-30来源:作者:点击数:
标签:
vs .net 提供了microsoft.win32类,下面有三个子类,全是针对注册表的,Microsoft.Win32.RegistryKey、Microsoft.Win32.Registry、Microsoft.Win32.RegistryHive Microsoft.Win32.Registry提供了访问各个注册表中根的值 Microsoft.Win32.Registry.CurrentUser
vs
.net提供了microsoft.win32类,下面有三个子类,全是针对注册表的,Microsoft.Win32.RegistryKey、Microsoft.Win32.Registry、Microsoft.Win32.RegistryHive
Microsoft.Win32.Registry提供了访问各个注册表中根的值
Microsoft.Win32.Registry.CurrentUser @#为HKEY_CURRENT_USER根键
Microsoft.Win32.Registry.ClassesRoot @#为HKEY_CLASSES_ROOT根键
Microsoft.Win32.Registry.CurrentConfig @#为HKEY_CURRENT_CONFIG根键
Microsoft.Win32.Registry.Users @#为HKEY_USERS根键
Microsoft.Win32.Registry.DynDa @#对应于HKEY_DYN_DATA主键
Microsoft.Win32.Registry.PerformanceData @#对应于HKEY_PERFORMANCE_DATA主键
Microsoft.Win32.Registry.LocalMachine @#为HKEY_LOCAL_MACHINE根键
了解了这么多,让我们来对注册表进行操作吧!举个小例子:
Dim key As Microsoft.Win32.RegistryKey, subkey As Microsoft.Win32.RegistryKey
key = Microsoft.Win32.Registry.CurrentUser @#key为HKEY_USERS根键
subkey = key.CreateSubKey("Software\
vb.net") @#在HKEY_USERS\software下创建一个
vb.net子键
subkey.SetValue("GOOD?", "of course") @#在HKEY_USERS\software\vb.net下设置一个键值,键值名为good?,值为of course了
上面是在注册表里创建键了,下面我们用程序来访问我们刚创建的注册表的键吧:
key = microsoft.Win32.Registry.CurrentUser @#如上
subkey=key.OpenSubKey("software\vb.net",True) @#subkey即为HKEY_USERS\software\vb.net键
dim value as object=subkey.GetValue("Good?") @#value为HKEY_USERS\software\vb.net键中的GOOD?的值
msgbox(value.tostring()) @#将出现of course了
上面是获取注册表键值了,要设值,还是用subkey.setvalue了
来讲讲删除吧:
key.DeleteSubKey("software\vb.net") @#删除这个键了也可以用:
key.DeleteSubKeyTree("software\vb.net")
还可以用key.GetSubKeyNames来遍历子键
即:for i=0 to ubound(key.GetSubKeyNames())
subkey=key.OpenSubKey(key.GetSubKeyNames()(i),True)
....... @#对每个子键的处理
next
用key.GetValueNames来遍历各个值
即:
for i=0 to ubound(key.GetValueNames())
key.GetValueNames()(i) @#为每个值的名称
value=key.Getvalue(key.GetValueNames()(i)) @#为每个值的值
讲到这儿,对注册表的各项操作也差不多了吧!如果结合起来用,什么都可以干了呀,呵呵!
原文转自:http://www.ltesting.net