RegCopyTreeA function

Copies the specified registry key, along with its values and subkeys, to the specified destination key.

Syntax

LSTATUS RegCopyTreeA(
  HKEY   hKeySrc,
  LPCSTR lpSubKey,
  HKEY   hKeyDest
);

Parameters

hKeySrc

A handle to an open registry key. The key must have been opened with the KEY_READ access right. For more information, see Registry Key Security and Access Rights.

This handle is returned by the RegCreateKeyEx or RegOpenKeyEx function, or it can be one of the predefined keys.

lpSubKey

The name of the key. This key must be a subkey of the key identified by the hKeySrc parameter. This parameter can also be NULL.

hKeyDest

A handle to the destination key. The calling process must have KEY_CREATE_SUB_KEY access to the key.

This handle is returned by the RegCreateKeyEx or RegOpenKeyEx function, or it can be one of the predefined keys.

Return Value

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.

Remarks

This function also copies the security descriptor for the key.

To compile an application that uses this function, define _WIN32_WINNT as 0x0600 or later. For more information, see Using the Windows Headers.

Requirements

   
Windows version Windows Vista [desktop apps only] Windows Server 2008 [desktop apps only]
Target Platform Windows
Header winreg.h (include Windows.h)
Library Advapi32.lib
DLL Advapi32.dll

See Also

Registry Functions