搜索文章:

首页  |  Java技术  |  Asp.net  |  Asp编程  |  VC/C++  |  Delphi  |  VB编程

vb.net下对注册表的各种操作

作者: unknow
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)) @#为每个值的值
讲到这儿,对注册表的各项操作也差不多了吧!如果结合起来用,什么都可以干了呀,呵呵!


 
相关文章:
© 2006   www.java-asp.net