다음을 통해 공유


RegDeleteKeyExA 함수(winreg.h)

레지스트리의 지정된 플랫폼별 보기에서 하위 키와 해당 값을 삭제합니다. 키 이름은 대/소문자를 구분하지 않습니다.

하위 키를 트랜잭션 작업으로 삭제하려면 RegDeleteKeyTransacted 함수를 호출합니다.

통사론

LSTATUS RegDeleteKeyExA(
  [in] HKEY   hKey,
  [in] LPCSTR lpSubKey,
  [in] REGSAM samDesired,
       DWORD  Reserved
);

매개 변수

[in] hKey

열린 레지스트리 키에 대한 핸들입니다. 이 키의 액세스 권한은 삭제 작업에 영향을 미치지 않습니다. 액세스 권한에 대한 자세한 내용은 레지스트리 키 보안 및 액세스 권한참조하세요.

이 핸들은 RegCreateKeyEx 또는 RegOpenKeyEx 함수에서 반환되거나 다음 미리 정의된 키중 하나일 수 있습니다.

HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS

[in] lpSubKey

삭제할 키의 이름입니다. 이 키는 hKey 매개 변수 값으로 지정된 키의 하위 키여야 합니다.

함수는 DELETE 액세스 권한이 있는 하위 키를 엽니다.

키 이름은 대/소문자를 구분하지 않습니다.

이 매개 변수의 값은 NULL수 없습니다.

[in] samDesired

레지스트리의 플랫폼별 보기를 지정하는 액세스 마스크입니다.

의미
KEY_WOW64_32KEY
0x0200
32비트 레지스트리 보기에서 키를 삭제합니다.
KEY_WOW64_64KEY
0x0100
64비트 레지스트리 보기에서 키를 삭제합니다.

Reserved

이 매개 변수는 예약되어 있으며 0이어야 합니다.

반환 값

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

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

발언

삭제된 키는 마지막 핸들을 닫을 때까지 제거되지 않습니다.

WOW64에서 32비트 애플리케이션은 64비트 애플리케이션이 보는 레지스트리 트리와 별개의 레지스트리 트리를 봅니다. 이 함수를 사용하면 애플리케이션이 대체 레지스트리 보기에서 항목을 삭제할 수 있습니다.

삭제할 하위 키에는 하위 키가 없어야 합니다. 키와 모든 하위 키를 삭제하려면 하위 키를 열거하고 개별적으로 삭제해야 합니다. 키를 재귀적으로 삭제하려면 RegDeleteTree 또는 SHDeleteKey 함수를 사용합니다.

함수가 성공하면 RegDeleteKeyEx 레지스트리에서 지정된 키를 제거합니다. 모든 값을 포함하여 전체 키가 제거됩니다.

메모

레거시 버전의 Windows에서 이 API는 kernel32.dll의해 노출됩니다.

메모

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

요구 사항

요구
지원되는 최소 클라이언트 Windows Vista, Windows XP Professional x64 Edition [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008, Windows Server 2003 SP1 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winreg.h(Windows.h 포함)
라이브러리 Advapi32.lib
DLL Advapi32.dll

참고 항목

RegCreateKeyEx

RegDeleteKeyTransacted

RegOpenKeyEx

레지스트리 함수

레지스트리 리디렉터