다음을 통해 공유


OREnumKey 함수

오프라인 레지스트리 하이브에서 지정된 열린 레지스트리 키의 하위 키를 열거합니다. 함수는 호출할 때마다 하나의 하위 키에 대한 정보를 검색합니다.

구문

DWORD OREnumKey(
  _In_        ORHKEY    Handle,
  _In_        DWORD     dwIndex,
  _Out_       PWSTR     lpName,
  _Inout_     PDWORD    lpcName,
  _Out_opt_   PWSTR     lpClass,
  _Inout_opt_ PDWORD    lpcClass,
  _Out_opt_   PFILETIME lpftLastWriteTime
);

매개 변수

핸들 [in]

오프라인 레지스트리 하이브에서 열린 레지스트리 키에 대한 핸들입니다.

dwIndex [in]

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

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

lpName [out]

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

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

lpcName [in, out]

WCHAR에서 lpName 매개 변수로 지정된 버퍼의 크기를 지정하는 변수에 대한 포인터입니다. 이 크기에는 종료 null 문자가 포함되어야 합니다. 함수가 성공하면 lpcName 이 가리키는 변수에는 종료 null 문자를 포함하지 않고 버퍼에 저장된 문자 수가 포함됩니다.

lpClass [out, optional]

열거형 하위 키의 null로 종료된 클래스 문자열을 수신하는 버퍼에 대한 포인터입니다. 이 매개 변수는 NULL일 수 있습니다.

lpcClass [in, out, optional]

WCHAR에서 lpClass 매개 변수로 지정된 버퍼의 크기를 지정하는 변수에 대한 포인터입니다. 크기에는 종료 null 문자가 포함되어야 합니다. 함수가 성공하면 lpcClass 에는 종료 null 문자를 포함하지 않고 버퍼에 저장된 문자 수가 포함됩니다. 이 매개 변수는 lpClassNULL인 경우에만 NULL일 수 있습니다.

lpftLastWriteTime [out, optional]

열거된 하위 키가 마지막으로 작성된 시간을 수신하는 FILETIME 구조체에 대한 포인터입니다. 이 매개 변수는 NULL일 수 있습니다.

반환 값

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

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

  • lpName 버퍼가 너무 작아서 키 이름을 수신하지 못하면 함수는 ERROR_MORE_DATA 반환합니다.
  • 사용할 수 있는 하위 키가 더 이상 없으면 함수는 ERROR_NO_MORE_ITEMS 반환합니다.

설명

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

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

애플리케이션이 OREnumKey 함수를 사용하는 동안 열거 중인 키를 변경할 수 있는 오프라인 레지스트리 함수를 호출해서는 안 됩니다.

요구 사항

요구 사항
재배포 가능 파일
Windows 오프라인 레지스트리 라이브러리 버전 1.0 이상
헤더
Offreg.h
DLL
Offreg.dll

추가 정보

ORCreateKey

ORDeleteKey

OROpenKey

ORQueryInfoKey