다음을 통해 공유


RegReplaceKeyA 함수(winreg.h)

레지스트리 키와 모든 하위 키를 지원하는 파일을 다른 파일로 바꿉니다. 따라서 시스템이 다음에 시작될 때 키와 하위 키는 새 파일에 저장된 값을 갖게 됩니다.

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

구문

LSTATUS RegReplaceKeyA(
  [in]           HKEY   hKey,
  [in, optional] LPCSTR lpSubKey,
  [in]           LPCSTR lpNewFile,
  [in]           LPCSTR lpOldFile
);

매개 변수

[in] hKey

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

HKEY_CLASSES_ROOTHKEY_CURRENT_CONFIGHKEY_CURRENT_USERHKEY_LOCAL_MACHINEHKEY_USERS

[in, optional] lpSubKey

하위 키와 값을 바꿀 레지스트리 키의 이름입니다. 키가 있는 경우 hKey 매개 변수로 식별되는 키의 하위 키여야 합니다. 하위 키가 없으면 생성됩니다. 이 매개 변수는 NULL일 수 있습니다.

지정된 하위 키가 하이브의 루트가 아닌 경우 RegReplaceKey 는 하이브 루트가 발생할 때까지 하이브 트리 구조를 트래버스한 다음, 해당 hive의 내용을 lpNewFile에 지정된 데이터 파일의 내용으로 바꿉니다.

자세한 내용은 레지스트리 요소 크기 제한을 참조하세요.

[in] lpNewFile

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

[in] lpOldFile

대체되는 레지스트리 정보의 백업 복사본을 수신하는 파일의 이름입니다.

반환 값

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

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

설명

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

lpNewFile 매개 변수로 지정된 파일은 시스템이 다시 시작될 때까지 열린 상태로 유지됩니다.

hKeyRegConnectRegistry에서 반환된 핸들인 경우 lpNewFile 및 lpOldFile 지정된 경로는 원격 컴퓨터를 기준으로 합니다.

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

참고

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

요구 사항

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

추가 정보

RegConnectRegistry

RegDeleteKey

RegLoadKey

RegRestoreKey

RegSaveKey

레지스트리 함수

레지스트리 개요