RegRenameKey

指定したレジストリキーの名前を変更する。(RegRenameKey)

RegRenameKey hKey, lpSubKeyName, lpNewKeyName

hKey : [intptr] 名前を変更するキーへのハンドル。ハンドルは KEY_WRITE アクセス権で開かれている必要がある。詳細は [Registry Key Security and Access Rights](/windows/win32/SysInfo/registry-key-security-and-access-rights) を参照のこと。このハンドルは [RegCreateKeyEx](nf-winreg-regcreatekeyexa.md) または [RegOpenKeyEx](nf-winreg-regopenkeyexa.md) 関数が返すか、以下の [定義済みキー](/windows/win32/SysInfo/predefined-keys) のいずれかを指定できる: * HKEY_CLASSES_ROOT * HKEY_CURRENT_CONFIG * HKEY_CURRENT_USER * HKEY_LOCAL_MACHINE * HKEY_USERS
lpSubKeyName : [wstr] 名前を変更するサブキーの名前。このキーは *hKey* パラメータで識別されるキーのサブキーでなければならない。このパラメータは **NULL** でもよく、その場合、*hKey* パラメータで識別されるキー自体の名前が変更される。
lpNewKeyName : [wstr] キーの新しい名前。新しい名前はまだ存在していてはならない。

(プラグイン / モジュール : advapi32.dll)

解説

指定したレジストリキーの名前を変更する。(RegRenameKey)

[戻り値]
関数が成功した場合、戻り値は ERROR_SUCCESS となる。関数が失敗した場合、戻り値は Winerror.h で定義された 0
以外のエラーコードとなる。[FormatMessage](/windows/desktop/api/winbase/nf-winbase-formatmessage)
関数に FORMAT_MESSAGE_FROM_SYSTEM
フラグを指定して呼び出すと、エラーの一般的な説明を取得できる。STATUS_ACCESS_DENIED
のエラーコードは、呼び出し側が指定したレジストリキーまたはサブキーに対して必要なアクセス権を持っていないことを示す。

[備考]
この関数はレジストリのサブツリー全体の名前を変更するのに使用できる。呼び出し側は、指定したキーの親に対する
KEY_CREATE_SUB_KEY アクセス権、および名前変更対象のサブツリー全体に対する DELETE アクセス権を持つ必要がある。

情報

プラグイン / モジュールadvapi32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の advapi32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_advapi32_gen2.hs