怎么用VB.NET操作注册表

发布时间:2022-10-17 16:55:28 作者:iii
来源:亿速云 阅读:325

这篇“怎么用VB.NET操作注册表”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么用VB.NET操作注册表”文章吧。

      Windows系统将计算机全部配置信息和各应用程序信息容纳在“注册表”数据库中,用它来管理应用程序和关联文件、硬件设备说明、状态属性以及各种状态信息和数据等。注册表由“我的电脑”分出几个根键蜂箱分支(根键名前缀为HKEY_,H由蜂箱Hive而来),都有哪类根键是由安装的操作系统来决定的。

1、注册表常见的根键分支有:  

2、VB.Net可以通过使用API函数(不推荐)、My.Computer.Registry 命名空间、VB注册表原始程序方法来操作注册表。

(1)VB注册表原始程序方法只要有普通用户的权限就能够执行,但这些方法只能对如下默认路径范围的注册表进行操作:HKEY_CURRENT_USER\\Software\\VBandVBAProgramSettingsRegistry。这些方法有:

举例:

Dim rg(,) As String=GetAllSettings("我的程序","数据目录")  
For i As Integer = 0 To rg.GetUpperBound(0)            
   TextBox1.Text &= rg(i,0) & "=" & rg(i,1)  
   
Next

(2)My.Computer.Registry命名空间有七个RegistryKey实例对象,对应注册表的七个相应根键:

.ClassesRoot---HKEY_CLASSES_ROOT

.CurrentConfig---HKEY_CURRENT_CONFIG

.CurrentUser---HKEY_CURRENT_USER

.LocalMachine---HKEY_LOCAL_MACHINE

.Users---HKKEY_USERS

.DynData---HKEY_DYN_DATA  

.PerformanceData---HKEY_PERFORMANCE_DATA  

      对以上RegistryKey对象(除了HKEY_CURRENT_USER)的注册表操作可能需要特定的用户权限。使用RegistryKey类前必须先引入Microsoft.Win32命名空间。

(3)RegistryKey 的最常用属性和方法:

Name 返回键的路径

ToString 返回键名

Close  关闭键(如果修改过,保存后再关闭)

CreateSubKey  创建一个子项或打开一个现有子项以进行写访问

DeleteSubKey  删除指定的子项。当该子项还含有子项时,不能被删除

DeleteSubKeyTree  删除一个子项以及它的所有下层子项

DeleteValue  删除该键的值

Flush  把对该键的任何更改立即写入注册表

GetSubKeyNames  返回所有子项名称的字符串数组

GetValue  返回指定名称的值(可以设置一个不存在该名称时的默认返回值)

GetValueKind  返回某个键内指定值的RegistryValueKind类型,可能是:Binary,DWord,ExpandString,MultiString,QWord,String,Unknown

GetValueNames  返回所有与此键关联的值名称的字符串数组

OpenSubKey  返回一个子项的RegistryKey对象(可以指定是否可写入)

SetValue  创建或修改指定的键值对

SubKeyCount  返回当前项的直接子项数目

ValueCount  返回存储在该键内的值数目

举例:

Imports Microsoft.Win32
Public Class Form1
Private Sub Button1_Click(sender As Object,e As EventArgs) Handles Button1.Click
   Dim reg As RegistryKey=My.Computer.Registry.CurrentUser.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\un",True)
   If reg.GetValue("test") IsNot Nothing Then
      If MessageBox.Show("该键已经存在,需要删除吗?","提示",MessageBoxButtons.YesNo)=DialogResult.Yes Then
         reg.DeleteValue("test",True)
         MessageBox.Show("删除成功!")           
      End If       
   Else           
      reg.SetValue("test",567)
      MessageBox.Show("设置成功!")       
   End If       
   reg.Close()       
   reg=Nothing   
 End Sub
 End Class

以上就是关于“怎么用VB.NET操作注册表”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。

推荐阅读:
  1. 使用python如何操作注册表
  2. vbs如何实现注册表操作

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

vb.net

上一篇:VB.NET的数据类型如何转换

下一篇:VB.NET的字符操作函数有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》