Function Reference

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上での実行時に64ビット環境のキーを列挙したい場合はHK...に64という接尾辞をつけます(例:HKLM64)。

AutoItはREG_BINARY、REG_SZ、REG_MULTI_SZ、REG_EXPAND_SZ、REG_QWORD、REG_DWORDのレジストリキー型をサポートしています。

(Default)値にアクセスするためには、""(空文字列)をvaluenameに使用してください。

REG_MULTI_SZキーを書き込む場合はそれぞれの値を@LFで区切ってください。空部分文字列を付け加えたい場合を除いて、値の最後には@LFをつけないでください(例を参照)。

keynameに"\\computername\keyname"形式を使用することでリモートのレジストリにアクセスすることが可能です。この機能を使用するためにはNT/2000/XP/2003の正しいアクセス権限を持っていなければなりません。

 

関連

RegDelete, RegRead, RegEnumKey, RegEnumVal

 


; REG_SZ値を1つ書き込み
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey", "REG_SZ", "Hello this is a test")

; "line1"、"line2"というREG_MULTI_SZ値を書き込み
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey1", "REG_MULTI_SZ", "line1" & @LF & "line2")

; "line1"というREG_MULTI_SZ値を書き込み
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey2", "REG_MULTI_SZ", "line1")

; 常にNULL文字を付加
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey3", "REG_MULTI_SZ", "line1" & @LF & "line2" & @LF)
RegWrite("HKEY_CURRENT_USER\Software\Test", "TestKey4", "REG_MULTI_SZ", "line1" & @LF & @LF & "line2" & @LF)

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

; キー作成のみ
RegWrite("HKEY_CURRENT_USER\Software\Test1")