section 必要。字符串表达式,包含区域名称,并要求该区域有注册表项设置。GetAllSettings 返回 Variant,其内容为字符串的二维数组,该二维数组包含指定区域中的所有注册表项设置及其对应值。
说明 如果 appname 或 section 不存在,则 GetAllSettings 返回未初始化的 Varian
函数示例 本示例首先使用 SaveSetting 语句来建立 Windows标准位置里 appname 应用程序的项目,然后再使用 GetAllSettings 函数来取得设置值并显示出来。请注意,应用程序名和 section 名称不能用 GetAllSettings 函数取得。最后,使用 DeleteSetting 语句将该应用程序项删除。
' 用来保存 GetAllSettings 函数所返回之二维数组数据的变量
' 整型数是用来计数用。
Dim MySettings As Variant, intSettings As Integer
' 在注册表中添加设置值。
SaveSetting appname := "我的工程", section := "我的子键", key := "Top", setting := 75
SaveSetting "我的工程","我的子键", "Left", 50
' 取得输入项的设置值。
MySettings = GetAllSettings(appname := "我的工程", section := "我的子键") For intSettings = LBound(MySettings, 1) To UBound(MySettings, 1) Debug.Print MySettings(intSettings, 0), MySettings(intSettings, 1) Next intSettings DeleteSetting "我的工程", "我的子键" |
4、DeleteSetting 从应用程序项目里删除区域或注册表项设置
语法 DeleteSetting appname, section[, key]
参数 appname 必需的。字符串表达式,应用程序或工程的名称。
section 必要。字符串表达式,包含要删除注册表项设置的区域名称。如果只有 appname 和 section,则将指定的区域连同所有有关的注册表项设置都删除。
key 可选。字符串表达式,包含要删除的注册表项设置。
说明 如果提供了所有参数,则删除指定的注册表项设置。如果试图使用不存在的区域或注册表项设置上的 DeleteSetting 语句,则发生一个运行时错误。
函数示例 见SaveSetting函数示例
二、 调用 Windows API 函数来操作注册表
虽然VB本身提供了四个关于注册表的函数,但是这四个函数只能在标准位置即“HKEY_CURRENT_USER\Software\VB and VBA ProgramSettings”下读取、删除、修改键值。对于一般的应用程序,利用它们就可以达到您的目的,对于特殊的要求利用它们就显得无能为力了。在 Visual Basic 中除了使用这四个内部语句或函数外,还可以调用 Windows API 函数来操作注册表。
所谓 API(Application Programing Interface) 是 Windows 提供的一个32位环境下的应用程序编程接口,其中包括了众多的函数,提供了相当丰富的功能。我们在编制应用程序时,可以调用其中的注册表函数来对注册表进行操作以实现我们需要的功能。Windows API 中可用于注册表的函数一共有二十多个,根据其功能不同可以分为如下几类:
1.键管理类
RegCloseKey() RegCreateKey() RegCreateKeyEx() RegDeleteKey() RegDeleteKeyEx() RegOpenKey() RegOpenKeyEx()
2.值管理类
RegDeleteValue() RegQueryValue() RegQueryValueEx() RegSetValue() RegSetValueEx()
3.查询计数类
RegQueryInfoKey() RegEnumKey() RegEnumKeyEx() RegEnumValue()
4.备份/恢复类
RegLoadKey() RegReplaceKey() RegRestoreKey() RegSaveKey()
5.实用类
RegConnectRegistry() RegNotifyChangeKeyValue() RegUnloadKey()
6.安全类(仅适用于NT)
RegGetKeySecurity() RegSetKeySecurity()
下面详细介绍这几个Windows API 函数的用法:
1. RegOpenKey——取得SubKey的Hkey

发表评论