Share via


RegRestoreKeyA 함수(winreg.h)

지정된 파일에서 레지스트리 정보를 읽고 지정된 키 위에 복사합니다. 이 레지스트리 정보는 키 및 여러 수준의 하위 키 형식일 수 있습니다.

시스템 파일 및 레지스트리 하이브를 포함하여 시스템 상태를 백업하거나 복원하는 애플리케이션은 레지스트리 함수 대신 볼륨 섀도 복사본 서비스를 사용해야 합니다.

구문

LSTATUS RegRestoreKeyA(
  [in] HKEY   hKey,
  [in] LPCSTR lpFile,
  [in] DWORD  dwFlags
);

매개 변수

[in] hKey

열린 레지스트리 키에 대한 핸들입니다. 이 핸들은 RegCreateKeyEx 또는 RegOpenKeyEx 함수에서 반환됩니다. 미리 정의된 다음 키 중 하나일 수도 있습니다.

HKEY_CLASSES_ROOTHKEY_CURRENT_CONFIGHKEY_CURRENT_USERHKEY_LOCAL_MACHINEHKEY_USERS 이 키에 포함된 모든 정보와 해당 하위 키는 lpFile 매개 변수가 가리키는 파일의 정보로 덮어씁니다.

[in] lpFile

레지스트리 정보가 있는 파일의 이름입니다. 이 파일은 일반적으로 RegSaveKey 함수를 사용하여 만들어집니다.

[in] dwFlags

키 또는 키를 복원하는 방법을 나타내는 플래그입니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.

의미
REG_FORCE_RESTORE
0x00000008L
지정된 경우 열려 있는 핸들이 hKey 매개 변수가 가리키는 레지스트리 계층 구조의 위치 또는 아래에 있는 경우에도 복원 작업이 실행됩니다.
REG_WHOLE_HIVE_VOLATILE
0x00000001L
지정된 경우 레지스트리 정보 또는 하이브의 새로운 휘발성(메모리 전용) 집합이 만들어집니다. REG_WHOLE_HIVE_VOLATILE 지정한 경우 hKey 매개 변수로 식별되는 키는 HKEY_USERS 또는 HKEY_LOCAL_MACHINE 값이어야 합니다.

반환 값

함수가 성공하면 반환 값이 ERROR_SUCCESS.

함수가 실패하면 반환 값은 Winerror.h에 정의된 0이 아닌 오류 코드입니다. FormatMessage 함수를 FORMAT_MESSAGE_FROM_SYSTEM 플래그와 함께 사용하여 오류에 대한 일반적인 설명을 가져올 수 있습니다.

설명

두 가지 레지스트리 하이브 파일 형식이 있습니다. 현재 운영 체제에서 만든 레지스트리 하이브는 일반적으로 이전 운영 체제에서 로드할 수 없습니다.

hKey 매개 변수의 하위 키가 열려 있으면 RegRestoreKey가 실패합니다.

호출 프로세스에는 레지스트리가 있는 컴퓨터에 대한 SE_RESTORE_NAME 및 SE_BACKUP_NAME 권한이 있어야 합니다. 자세한 내용은 특별 권한으로 실행을 참조하세요.

이 함수는 지정된 키 아래의 키와 값을 파일의 최상위 키 이름에 관계없이 파일의 최상위 키에 대한 보조 키 및 값으로 바꿉니다. 예를 들어 hKey 는 하위 키 B 및 C를 사용하여 키 A를 식별할 수 있지만 lpFile 매개 변수는 하위 키 Y 및 Z가 있는 키 X가 포함된 파일을 지정합니다. RegRestoreKey를 호출한 후 레지스트리에는 하위 키가 Y 및 Z인 키 A가 포함됩니다. A의 값 항목은 X의 값 항목으로 바뀝니다.

lpFile으로 지정된 파일의 새 정보는 키 이름을 제외하고 hKey 매개 변수에 지정된 키의 내용을 덮어씁니다.

hKey가 원격 컴퓨터의 키를 나타내는 경우 lpFile에서 설명하는 경로는 원격 컴퓨터를 기준으로 합니다.

참고

winreg.h 헤더는 REgRestoreKey를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 winreg.h(Windows.h 포함)
라이브러리 Advapi32.lib
DLL Advapi32.dll

추가 정보

RegDeleteKey

RegLoadKey

RegReplaceKey

RegSaveKey

레지스트리 함수

레지스트리 개요