龙空技术网

VB 自带的注册表操作函数示例「转」

心智之旅 83

前言:

眼前同学们对“vb注册表清理”大概比较讲究,我们都想要剖析一些“vb注册表清理”的相关资讯。那么小编同时在网摘上收集了一些对于“vb注册表清理””的相关资讯,希望大家能喜欢,咱们一起来了解一下吧!

Option Explicit

'SaveSetting在 Windows 注册表中保存或建立应用程序项目。

'语法

'把项目写入注册表:savesetting "应用程序名","主键名","项","字符串值"

'SaveSetting appname, section, Key, setting

'使用命名参数:

'SaveSetting appname:="MyApp", section:="Startup", Key:="Top", setting:=75

'SaveSetting 语句的语法具有下列命名参数:

'部分 描述

'appname 必要。字符串表达式,包含应用程序或工程的名称,对这些应用程序或工程使用设置

'section 必要。字符串表达式,包含区域名称,在该区域保存注册表项设置。

'key 必要。字符串表达式,包含将要保存的注册表项设置的名称。

'setting 必要。表达式,包含 key 的设置值。

'说明

'如果无论如何也不能保存注册表项设置,则将导致错误发生。

Private Sub Command1_Click()

SaveSetting "注册表函数示例", "设置", "设置值", Text1.Text

SaveSetting "注册表函数示例", "设置", "2", "这是第二个值"

SaveSetting "注册表函数示例", "新次项", "3", "这是第三个值"

End Sub

'GetSetting 该方法其实读取,注册表中HKEY_CURRENT_USER\Software\VB and VBA Program Settings下相应的值。

'------------------------------------

'语法

'GetSetting("应用程序名","主键名","项",[默认值])

'GetSetting(appname, section, key[, default])

'GetSetting 函数的语法具有下列命名参数:

'部分 描述

'appname 必要。字符串表达式,包含应用程序或工程的名称,要求这些应用程序或工程有注册表项设置。

'section 必要。字符串表达式,包含区域名称,要求该区域有注册表项设置。

'key 必要。字符串表达式,返回注册表项设置的名称。

'default 可选。表达式,如果注册表项设置中没有设置值,则返回缺省值。如果省略,则 default 取值为长度为零的字符串 ("")。

'说明

'如果 GetSetting 的参数中的任何一项都不存在,则 GetSetting 返回 default 的值。

Private Sub Command2_Click()

Label1.Caption = GetSetting("注册表函数示例", "设置", "设置值", "默认值")

End Sub

'DeleteSetting在 Windows 注册表中,从应用程序项目里删除区域或注册表项设置。

'语法

'DeleteSetting "应用程序名"[,"主键名"][,"项"]

'DeleteSetting appname [,section][, key]

'DeleteSetting 语句的语法具有下列命名参数:

'部分 描述

'appname 必需的。字符串表达式,包含应用程序或工程的名称,区域或注册表项用于这些应用程序或工程。

'section 可选。字符串表达式,包含要删除注册表项设置的区域名称。如果只有 appname 和 section,则将指定的区域连同所有有关的注册表项设置都删除。

'key 可选。字符串表达式,包含要删除的注册表项设置。

'说明

'如果提供了所有参数,则删除指定的注册表项设置。如果试图使用不存在的区域或注册表项设置上的 DeleteSetting 语句,则发生一个运行时错误。

'DeleteSetting "MyApp" '如果省略了section和key,则整个appname都被删除

'再删除时,不管注册项下有没有其它值,都会被删除

Private Sub Command3_Click()

If GetSetting("注册表函数示例", "设置", "设置值") = Empty Then

MsgBox "现在注册中的值已经被删除了"

Else

DeleteSetting "注册表函数示例", "设置", "设置值"

End If

End Sub

Private Sub Command4_Click()

If GetSetting("注册表函数示例", "设置", "设置值") = Empty Then

MsgBox "现在注册中的值已经被删除了"

Else

DeleteSetting "注册表函数示例", "设置"

End If

End Sub

Private Sub Command5_Click()

If GetSetting("注册表函数示例", "设置", "设置值") = Empty Then

MsgBox "现在注册中的值已经被删除了"

Else

DeleteSetting "注册表函数示例"

End If

End Sub

'GetAllSettings(appname, section): 返回一个包含多项注册表设置值的数组

Private Sub Command6_Click()

Dim avntSettings As Variant

Dim intX As Integer

avntSettings = GetAllSettings("注册表函数示例", "设置")

If avntSettings <> Empty Then

For intX = 0 To UBound(avntSettings, 1)

Debug.Print avntSettings(intX, 0), avntSettings(intX, 1)

Next intX

Else

MsgBox "注册表中没有值"

End If

End Sub

标签: #vb注册表清理