Platform SDK: Registry |
The RegDeleteKey function deletes a subkey.
Windows 95/98: The function also deletes all subkeys and values. To delete a key only if the key has no subkeys or values, use the SHDeleteEmptyKey function.
Windows NT/2000: The subkey to be deleted must not have subkeys. To delete a key and all its subkeys, you need to recursively enumerate the subkeys and delete them individually. To recursively delete keys, use the SHDeleteKey function.
LONG RegDeleteKey( HKEY hKey, // handle to open key LPCTSTR lpSubKey // subkey name );
HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
Windows NT/2000: HKEY_PERFORMANCE_DATA
Windows 95/98: HKEY_DYN_DATA
The key specified by the lpSubKey parameter must be a subkey of the key identified by hKey.
Windows NT/2000: The specified key must not have subkeys.
If the function succeeds, the return value is ERROR_SUCCESS.
If the function fails, the return value is a nonzero error code defined in Winerror.h. You can use the FormatMessage function with the FORMAT_MESSAGE_FROM_SYSTEM flag to get a generic description of the error.
If the function succeeds, RegDeleteKey removes the specified key from the registry. The entire key, including all of its values, is removed.
Windows 95/98: No registry subkey or value name may exceed 255 characters.
Windows NT/2000: Requires Windows NT 3.1 or later.
Windows 95/98: Requires Windows 95 or later.
Header: Declared in Winreg.h; include Windows.h.
Library: Use Advapi32.lib.
Unicode: Implemented as Unicode and ANSI versions on Windows NT/2000.
Registry Overview, Registry Functions, RegCloseKey, RegCreateKeyEx, RegOpenKeyEx, SHDeleteEmptyKey, SHDeleteKey