创建一个主键、子键或值项。
RegWrite ( "键名" [,"值项", "类型", 数据] )
参数
| 键名 | 目标键名。若其它参数未指定则只创建该子键。 |
| 值项 | [可选参数] 目标值项。 |
| 类型 | [可选参数] 目标值项的数据类型,比如:"REG_SZ"、"REG_MULTI_SZ"、"REG_EXPAND_SZ"、"REG_DWORD" 或 "REG_BINARY"。 |
| 数据 | [可选参数] 数值数据。 |
返回值
| 成功: | 返回值为1。 |
| 失败: | 返回0,说明在写入键值时出错。 |
注意
键名必须以以下几种根键开头(也可用括号内的缩写):"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 分割各个字符串项目,该值项 不能 以 @LF 结尾,也允许写入“空项目”(请看下面的示例)。
如果要访问网络注册表则参数格式应该是”\\计算机名\键名“。此功能要求您必须拥有相应的访问权限(NT/2000/XP/2003),如果操作系统是Win9x 则要求远程PC必须先安装远程注册表服务(详细说明请搜索 微软知识库中发布号为141460的文章)。
相关
RegDelete, RegRead
示例
; 写入一个 REG_SZ 类型的数值
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE", "TestKey", "REG_SZ", "Hello this is a test")
; 写入一个 REG_MULTI_SZ 类型的数值,包括"line1" 和 "line2"
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE", "TestKey", "REG_MULTI_SZ", "line1" & @LF & "line2")
; 写入 REG_MULTI_SZ 类型值项的 错误示例
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE", "TestKey", "REG_MULTI_SZ", "line1" & @LF & "line2" & @LF) ;以 @LF 结尾
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE", "TestKey", "REG_MULTI_SZ", "line1" & @LF & @LF & "line2" & @LF) ;连续两个换行被认为是空项