GetSetting 函数

更新:2007 年 11 月

返回 Windows 注册表中某个应用程序项的项设置值。

在注册表操作中,My 功能具有比 GetAllSettings 更高的效率和更好的性能。有关更多信息,请参见 My.Computer.Registry 对象

Public Function GetSetting( _
   ByVal AppName As String, _
   ByVal Section As String, _
   ByVal Key As String, _
   Optional ByVal Default As String = "" _
) As String

参数

  • AppName
    必选。String 表达式,包含其键设置被请求的应用程序或项目的名称。

  • Section
    必选。String 表达式,包含可在其中找到键设置的节的名称。

  • Key
    必选。String 表达式,包含要返回的键设置的名称。

  • Default
    可选。表达式,如果 Key 设置中没有设置值,则包含要返回的值。如果省略,则假定 Default 为零长度字符串 ("")。

异常

异常类型

错误号

条件

ArgumentException

5

一个或多个参数不是 String 表达式,或用户没有登录。

如果正在升级使用非结构化错误处理方式的 Visual Basic 6.0 应用程序,请参见“错误号”一列。(您可以根据 Number 属性(Err 对象) 比较错误号。) 然而,如果可能,应当考虑用 Visual Basic 的结构化异常处理概述 替换这种错误控制。

备注

如果 GetSetting 参数中命名的任何项都不存在,则 GetSetting 返回 Default 的值。

因为它在 HKEY_LOCAL_USER 注册表项下操作,而该注册表项只有在用户以交互方式登录后才被激活,所以 GetSetting 要求用户必须登录。

要从非交互式进程(例如 Mtx.exe)访问的注册表设置应存储在 HKEY_LOCAL_MACHINE\Software\ 或 HKEY_USER\DEFAULT\Software 注册表项下。

GetSetting 需要 Read注册表权限

示例

此示例首先使用 SaveSetting 函数在 Windows 注册表中为指定为 AppName 的应用程序生成注册表项,然后使用 GetSetting 函数显示其中一项设置。由于指定了 Default 参数,所有确保了能返回某个值。Notice that Section names cannot be retrieved with GetSetting. 最后,DeleteSetting 函数将移除该应用程序的所有项。

' Place some settings in the registry.
SaveSetting("MyApp", "Startup", "Top", "75")
SaveSetting("MyApp", "Startup", "Left", "50")
Console.WriteLine(GetSetting("MyApp", "Startup", "Left", "25"))
DeleteSetting("MyApp")

智能设备开发人员说明

不支持此函数。

要求

命名空间:Microsoft.VisualBasic

**模块:**Interaction

**程序集:**Visual Basic 运行库(在 Microsoft.VisualBasic.dll 中)

请参见

概念

常见的注册表任务

参考

DeleteSetting 函数

GetAllSettings 函数

SaveSetting 函数

ArgumentException

RegistryPermission