回答:这就取决于你操作注册表的具体意图。如果你想保存一些简单的系统配置信息,那么VB的 SaveSetting和 GetSetting 命令就可以满足。更复杂一些的方法是Windows Script Host's (WSH) WshShell对象操作方式,但这一方法也很简单方便。第三种方法就是调用Win32 API注册表函数方式,这一方法最复杂,但只要掌握了就能够熟练地操作注册表。
VB的 SaveSetting和 GetSetting 命令让你以最小错误地存储字符串数据到注册表中。这两个命令存储的数据都位于HKEY_CURRENT_USERSoftwareVB下的副键下及VBA程序环境下。通常情况下,系统信息都保存在副键下,例如,如果想保存使用RegistryHacker程序的最后一个用户的名字,代码如下:
SaveSetting "RegistryHacker", "UserManagement",
"LastUser", "Lamont"
注册表的结构
Windows操作系统实质上是一个优化了的读取速度奇快的数据库。它的组织形式是等级型的树状结构,正如Windows的文件系统一样。注册表的根部代表着如HKEY_CURRENT_USER 的最高等级的键,树的节点就是键,包含着很多副键或带有名称的数据。注册表数据能存放不同类型的数据,包括字符串、32位和64位整数、二进制、字符串数组。
运行以上的代码即可生成RegistryHacker键和UserManagement副键,然后添加一个名为LastUser的值到UserManagement,并保存"Lamont"到该值。图A显示了这一结果。
Figure A
你可以用GetSetting来重新获得注册表的信息,如下所示:
strUser = GetSetting("RegistryHacker", "UserManagement",
"LastUser")
VB也提供了DeleteSetting命令来删除早先用SaveSetting存储的数据。
正如你所看到的,GetSetting and SaveSetting相当简单。然而,它们功能并不强大,很多情况下这种方法都无能为力。