函数说明

RegRead

读取注册表指定的值。

RegRead ( "键名", "值项" )

 

参数

键名 要读取的注册表的根键或其子键。
值项 要读取的值项名。

 

返回值

成功: 返回指定值项的数据。
失败: 返回空字符串 "",并把 @error 设为以下值之一:
1 无法打开指定键
-1 无法打开指定值项
-2 不支持目标值项的数据类型

 

注意

键名必须以以下几种根键开头(也可用括号内的缩写):"HKEY_LOCAL_MACHINE" ("HKLM")、"HKEY_USERS" ("HKU")、"HKEY_CURRENT_USER" ("HKCU")、"HKEY_CLASSES_ROOT" ("HKCR") 或 "HKEY_CURRENT_CONFIG" ("HKCC")。

目前 AutoIt 支持的数据类型包括 REG_BINARY、REG_SZ、REG_MULTI_SZ、REG_EXPAND_SZ 以及 REG_DWORD。

如果要访问(默认)值项只需传递一个""(空字符串)到值项参数中即可。

若目标值项的数据类型是 REG_BINARY 则返回值将是一个十六进制的字符串。比如该值项的数据是 01,a9,ff,77 则返回的字符串将是”01A9FF77“。

若目标值项的数据类型是 REG_MULTI_SZ 则多重字符串项目将被 @LF 分割,使用 StringSplit(..., @LF) 即可获得各个项目的内容。

如果要访问网络注册表则参数格式应该是”\\计算机名\键名“。此功能要求您必须拥有相应的访问权限(NT/2000/XP/2003),如果操作系统是Win9x 则要求远程PC必须先安装远程注册表服务(详细说明请搜索 微软知识库中发布号为141460的文章)。

 

相关

RegDelete, RegWrite, StringSplit

 

示例


$var = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", "ProgramFilesDir")
MsgBox(4096, "Program files 文件夹位于:", $var)