RegEnumKeyA 함수(winreg.h)

지정된 열린 레지스트리 키의 하위 키를 열거합니다. 함수는 호출할 때마다 하나의 하위 키의 이름을 검색합니다.

참고 이 함수는 16비트 버전의 Windows와의 호환성을 위해서만 제공됩니다. 애플리케이션은 RegEnumKeyEx 함수를 사용해야 합니다.
 

구문

LSTATUS RegEnumKeyA(
  [in]  HKEY  hKey,
  [in]  DWORD dwIndex,
  [out] LPSTR lpName,
  [in]  DWORD cchName
);

매개 변수

[in] hKey

열린 레지스트리 키에 대한 핸들입니다. 키는 KEY_ENUMERATE_SUB_KEYS 액세스 권한으로 열려 있어야 합니다. 자세한 내용은 레지스트리 키 보안 및 액세스 권한을 참조하세요.

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

HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS

[in] dwIndex

검색할 hKey 하위 키의 인덱스입니다. 이 값은 RegEnumKey 함수에 대한 첫 번째 호출에 대해 0이어야 하고 후속 호출에 대해 증가해야 합니다.

하위 키는 정렬되지 않으므로 새 하위 키에는 임의의 인덱스가 있습니다. 즉, 함수는 임의의 순서로 하위 키를 반환할 수 있습니다.

[out] lpName

종료 null 문자를 포함하여 하위 키의 이름을 수신하는 버퍼에 대한 포인터입니다. 이 함수는 전체 키 계층 구조가 아닌 하위 키의 이름만 버퍼에 복사합니다.

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

[in] cchName

TCHAR에서 lpName 매개 변수가 가리키는 버퍼의 크기입니다. 필요한 버퍼 크기를 확인하려면 RegQueryInfoKey 함수를 사용하여 hKey 매개 변수로 식별된 키에 대한 가장 큰 하위 키의 크기를 확인합니다.

반환 값

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

함수가 실패하면 반환 값은 시스템 오류 코드입니다. 사용할 수 있는 하위 키가 더 이상 없으면 함수는 ERROR_NO_MORE_ITEMS 반환합니다.

lpName 버퍼가 너무 작아서 키 이름을 받을 수 없다면 함수는 ERROR_MORE_DATA 반환합니다.

설명

하위 키를 열거하려면 애플리케이션이 처음에 dwIndex 매개 변수를 0으로 설정하여 RegEnumKey 함수를 호출해야 합니다. 그런 다음, 애플리케이션은 dwIndex 매개 변수를 증가시키고 하위 키가 더 이상 없을 때까지 RegEnumKey 함수를 호출해야 합니다(함수가 ERROR_NO_MORE_ITEMS 반환됨).

또한 애플리케이션은 함수에 대한 첫 번째 호출에서 마지막 키의 인덱 스로 dwIndex 를 설정하고 인덱스 0이 있는 하위 키가 열거될 때까지 인덱스를 감소할 수 있습니다. 마지막 하위 키의 인덱스 검색하려면 RegQueryInfoKey를 사용합니다.

애플리케이션이 RegEnumKey 함수를 사용하는 동안 쿼리 중인 키를 변경할 수 있는 등록 함수를 호출해서는 안 됩니다.

참고

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

요구 사항

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

추가 정보

RegCloseKey

RegCreateKeyEx

RegDeleteKey

RegEnumKeyEx

RegOpenKeyEx

RegQueryInfoKey

레지스트리 함수

레지스트리 개요