다음을 통해 공유


ORDeleteKey 함수

오프라인 레지스트리 하이브에서 하위 키와 해당 값을 삭제합니다.

구문

DWORD ORDeleteKey(
  _In_     ORHKEY Handle,
  _In_opt_ PCWSTR lpSubKey
);

매개 변수

핸들 [in]

오프라인 레지스트리 하이브에서 열린 레지스트리 키에 대한 핸들입니다. 이 핸들은 ORCreateKey 또는 OROpenKey 함수에서 반환됩니다.

lpSubKey [in, optional]

삭제할 키의 이름입니다. Handle에서 식별하는 키의 하위 키여야 하지만 하위 키는 사용할 수 없습니다.

하위 키가 없으면 함수는 ERROR_NOT_FOUND 반환합니다.

이 매개 변수가 NULL이면 함수는 Handle 매개 변수로 지정된 키를 삭제합니다. Handle 매개 변수로 지정된 키가 하이브의 루트 키인 경우 함수는 ERROR_INVALID_PARAMETER 반환합니다.

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

반환 값

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

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

  • 지정된 하위 키가 없으면 함수는 ERROR_FILE_NOT_FOUND 반환합니다.
  • 지정된 하위 키가 레지스트리 하이브의 루트 키인 경우 함수는 ERROR_INVALID_PARAMETER 반환합니다.
  • 지정된 하위 키에 하위 키가 있는 경우 함수는 ERROR_KEY_HAS_CHILDREN 반환합니다.

설명

지정된 레지스트리 키가 있는 경우 삭제된 것으로 표시됩니다. 삭제된 키는 마지막 핸들이 닫을 때까지 제거되지 않습니다.

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

삭제된 키에서는 ORCloseKey 함수만 호출할 수 있습니다. 다른 모든 오프라인 레지스트리 작업이 실패합니다. ORCreateKey를 호출하여 삭제된 키를 명시적으로 만든 경우 삭제된 키에 대한 마지막 핸들이 닫히면 키와 연결된 리소스가 해제됩니다.

요구 사항

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

추가 정보

ORCloseKey

ORCreateKey

OREnumKey

OROpenKey