首页 > 编程 > .NET > 正文

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

2024-07-10 13:07:13
字体:
来源:转载
供稿:网友
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)) '为每个值的值
讲到这儿,对注册表的各项操作也差不多了吧!如果结合起来用,什么都可以干了呀,呵呵!
  • 网站运营seo文章大全
  • 提供全面的站长运营经验及seo技术!
  • 发表评论 共有条评论
    用户名: 密码:
    验证码: 匿名发表