基 础 函 数 参 考


RegWrite

创建注册表的键或值.

RegWrite ( "键名" [,"值名" [, "类型" [, 值]]] )

参 数

键名 写入的键名. 若未指定其它参数, 将简单地创建该键.
值名 [可选参数] 写入的值项名称.
类型 [可选参数] 写入的键类型:
"REG_SZ", "REG_MULTI_SZ", "REG_EXPAND_SZ", "REG_DWORD", "REG_QWORD", 或 "REG_BINARY".
[可选参数] 写入的值.

返 回 值

成功: 返回 1.
失败: 返回 0, 写入注册表键或值发生错误.
@error 设置为下列值 :
1 无法打开请求的键
2 无法打开请求的主键
3 无法连接远程注册表
-1 无法打开请求的值
-2 不支持的值类型

备 注

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

运行于 64-位 Windows 操作系统, 如果写入键或值, 必须在 HK... 后面添加后缀 64, 如: HKLM64.

AutoIt 支持的数据类型包括: REG_BINARY, REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ, REG_QWORD, 与 REG_DWORD.

如果要访问 (Default) 值项, 只需传递 ""(空字符串) 到值名参数.

当写入 REG_MULTI_SZ 键时, 必须使用 @LF 分隔每个值. 并且值不能以 @LF 结束, 除非你想创建空子项 (见示例).

访问网络注册表的格式为: "\\计算机名\键名". 且必须拥有 NT/2000/XP/2003 相应的访问权限.

相 关 函 数

RegDelete, RegRead, RegEnumKey, RegEnumVal

函 数 示 例


; 写 REG_SZ 值
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey", "REG_SZ", "你好,这是一个测试")

; 写 REG_MULTI_SZ 值 "文本行 1" + "文本行 2"
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey1", "REG_MULTI_SZ", "文本行 1" & @LF & "文本行 2")

; 写 REG_MULTI_SZ 值 "文本行 1"
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey2", "REG_MULTI_SZ", "文本行 1")

; 随时添加和额外的空字符串
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey3", "REG_MULTI_SZ", "文本行 1" & @LF & "文本行 2" & @LF)
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey4", "REG_MULTI_SZ", "文本行 1" & @LF & @LF & "文本行 2" & @LF)

; 空 REG_MULTI_SZ
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey5", "REG_MULTI_SZ", "")

; 仅创建键项
RegWrite("HKEY_CURRENT_USER\Software\Test1")

provider with jb51.net (unicode)