怎么用VB.NET操作注册表

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

创新互联建站是一家集网站建设,绍兴企业网站建设,绍兴品牌网站建设,网站定制,绍兴网站建设报价,网络营销,网络优化,绍兴网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

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

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

  • HKEY_CLASSES_ROOT当前已在计算机上注册的所有COM服务器和与应用程序相关联的所有文件扩展名。

  • HKEY_CURRENT_CONFIG当前计算机的所有硬件配置信息。

  • HKEY_CURRENT_USER登录到当前计算机上的用户配置文件,其子项包含着环境变量、个人程序组、桌面设置、网络连接、打印机和应用程序首选项。

  • HKEY_LOCAL_MACHINE包含了操作系统及硬件相关信息的配置,为公共配置信息,与具体用户无关。

  • HKKEY_USERS当前计算机上所有的用户的缺省配置信息。

  • HKEY_DYN_DATA 用于Windows95,98,Me,包含硬件的当前状态,也包含了那些需要更新和检索的数据。

  • 另外有的系统还有 HKEY_PERFORMANCE_DATA,HKEY_PERFORMANCE_TEXT,HKEY_PERFORMANCE_NLSTEXT 根键。

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

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

  • SaveSetting(程序名,节名,键名,键值) 用此方法创建一个键,如果创建的键路径中没有VBandVBAProgramSettingsRegistry 子项,会自动创建这个子项,然后再添加相应键。

  • GetSetting(程序名,节名,键名[,默认键值]) 返回注册表键的值(如果没有键值则返回默认键值)

  • GetAllSettings(程序名,节名) 返回该节的所有注册表键值对数组(数组一维代表节,二维代表键,如果是0代表键名,1代表键值)

  • DeleteSetting(程序名[,节名]) 删除该程序或节的所有注册表键。

举例:

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操作注册表”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注创新互联行业资讯频道。


网页名称:怎么用VB.NET操作注册表
URL网址:http://bzwzjz.com/article/pccjdi.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站设计 成都网站设计 成都响应式网站建设 成都网站建设流程 品牌网站建设 公司网站建设 成都网站制作 企业网站设计 网站建设改版 温江网站设计 企业网站建设 成都做网站建设公司 营销型网站建设 成都企业网站制作 成都网站制作 网站建设方案 成都定制网站建设 成都网站制作公司 成都网站建设 成都响应式网站建设 成都网站设计 手机网站制作