RegWrite

首页  后退  前进

RegWrite
down2

RegWrite

创建注册表的键或值.

 

RegWrite ( "keyname" [, "valuename", "type", value] )

参数

keyname

写入的键名. 若未指定其它参数, 将简单地创建该键.

valuename

[可选] 写入的值项名称.

type

[可选] 写入的键类型:

"REG_SZ", "REG_MULTI_SZ", "REG_EXPAND_SZ", "REG_DWORD", "REG_QWORD", 或 "REG_BINARY".

value

[可选] 写入的值.

返回值

成功:

返回 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 结束, 除非你想创建空子项 (见示例).

 

访问远程注册表的格式为: "\计算机名键名". 要使用此功能, 你必须有正确的访问权限.

 

函数示例

; Write a single REG_SZ value
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey", "REG_SZ", "Hello this is a test")
; Write the REG_MULTI_SZ value of "line1" and "line2"
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey1", "REG_MULTI_SZ", "line1" & @CRLF & "line2")
; Write the REG_MULTI_SZ value of "line1"
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey2", "REG_MULTI_SZ", "line1")
; always add and extra null string
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey3", "REG_MULTI_SZ", "line1" & @CRLF & "line2" & @CRLF)
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey4", "REG_MULTI_SZ", "line1" & @CRLF & @CRLF & "line2" & @CRLF)
; empty REG_MULTI_SZ
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey5", "REG_MULTI_SZ", "")
; create just the key
RegWrite("HKEY_CURRENT_USER\Software\Test1")

----------------------------------------

 

该函数可以通过命令调用 exect

参见:

RegDelete, RegRead, RegEnumKey, RegEnumVal

例子
copy

exect=RegWrite('HKEY_CURRENT_USER\Software\Test','TestKey','REG_SZ','Helloствую') ;; 向寄存器写入唯一的值REG_SZ

 

exect=RegWrite('HKEY_CURRENT_USER\Software\Test','TestKey1','REG_MULTI_SZ','字符串1'&@LF&'字符串2') ;; 写入寄存器值"字符串1"和"字符串2",键入REG_MULTI_SZ

 

exect=RegWrite('HKEY_CURRENT_USER\Software\Test','TestKey6','REG_BINARY',StringToBinary('Hello')) ;; 用二进制数据创建参数

 

exect=RegWrite('HKEY_CURRENT_USER\Software\Test','TestKey7','REG_DWORD',17) ;; 用整数创建参数

up2

tcimage © Аверин Андрей для Total Commander Image Averin-And@yandex.ru