다음을 통해 공유


ORCreateKey 함수

오프라인 레지스트리 하이브에 지정된 레지스트리 키를 만듭니다. 키가 이미 있는 경우 함수가 키를 엽니다.

구문

DWORD ORCreateKey(
  _In_      ORHKEY               Handle,
  _In_      PCWSTR               lpSubKey,
  _In_opt_  PWSTR                lpClass,
  _In_opt_  DWORD                dwOptions,
  _In_opt_  PSECURITY_DESCRIPTOR pSecurityDescriptor,
  _Out_     PORHKEY              phkResult,
  _Out_opt_ PDWORD               pdwDisposition
);

매개 변수

핸들 [in]

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

lpSubKey [in]

이 함수가 열거나 만드는 하위 키의 이름을 포함하는 유니코드 문자열에 대한 포인터입니다. lpSubKey 매개 변수는 Handle 매개 변수로 식별되는 키의 하위 키를 지정해야 합니다. 레지스트리 트리의 깊이는 최대 32개 수준일 수 있습니다. 키 이름에 대한 자세한 내용은 레지스트리 구조를 참조하세요.

이 매개 변수는 NULL일 수 없습니다.

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

lpClass [in, optional]

이 키의 클래스(개체 형식)입니다. 이 매개 변수는 무시될 수 있습니다. 이 매개 변수는 NULL일 수 있습니다.

dwOptions [in, optional]

이 매개 변수는 0 또는 다음 값 중 하나일 수 있습니다.

의미
REG_OPTION_CREATE_LINK
0x00000002L
키는 기호 링크입니다. 대상 경로는 키의 L"SymbolicLinkValue" 값에 할당됩니다. 대상 경로는 절대 레지스트리 경로여야 합니다. 이 옵션을 설정하면 REG_OPTION_NON_VOLATILE 설정해야 합니다.
lpSubKey 매개 변수가 기존 키를 지정하는 경우 REG_OPTION_CREATE_LINK 사용하여 만들어야 합니다.
레지스트리 기호 링크는 애플리케이션 호환성을 위해 절대적으로 필요한 경우에만 사용해야 합니다.
REG_OPTION_NON_VOLATILE
0x00000000L
키가 휘발성이 아닙니다. 기본값입니다. 정보는 파일에 저장되며 시스템을 다시 시작할 때 유지됩니다. ORSaveHive 함수는 휘발성이 아닌 키를 저장합니다.

 

pSecurityDescriptor [in, optional]

새 키에 대한 보안 설명자를 포함하는 SECURITY_DESCRIPTOR 구조체에 대한 포인터입니다. pSecurityDescriptorNULL인 경우 키는 기본 보안 설명자를 가져옵니다. 키에 대한 기본 보안 설명자의 ACL은 직접 부모 키에서 상속됩니다.

phkResult [out]

열려 있거나 만든 키에 대한 핸들을 수신하는 변수에 대한 포인터입니다. ORCloseKey 함수를 사용하여 핸들 사용을 완료한 후 키를 닫습니다.

pdwDisposition [out, optional]

다음 처리 값 중 하나를 수신하는 변수에 대한 포인터입니다.

의미
REG_CREATED_NEW_KEY
0x00000001L
키가 존재하지 않고 만들어졌습니다.
REG_OPENED_EXISTING_KEY
0x00000002L
키가 존재했고 변경되지 않고 단순히 열렸습니다.

 

pdwDispositionNULL이면 처리 정보가 반환되지 않습니다.

반환 값

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

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

dwOptions 매개 변수가 REG_OPTION_CREATE_LINK 사용하여 설정되었지만 REG_OPTION_NON_VOLATILE 명확하거나 반환할 핸들이 하이브의 루트 키에 대한 핸들이면 함수는 ERROR_INVALID_PARAMETER 반환합니다.

설명

ORCreateKey 함수가 만드는 키에는 값이 없습니다. 애플리케이션은 ORSetValue 함수를 사용하여 키 값을 설정할 수 있습니다.

ORCreateKey 함수는 오프라인 레지스트리 하이브에서 루트 키를 만드는 데 사용할 수 없습니다. ORCreateHive 함수를 사용하여 루트 키를 만들고 키에 대한 핸들을 가져옵니다.

오프라인 레지스트리는 개별 키 저장을 지원하지 않습니다. ORSaveHive 함수를 사용하여 키와 해당 하위 키를 하이브에 저장합니다.

요구 사항

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

추가 정보

ORCloseKey

ORCreateHive

ORDeleteKey

ORSaveHive

SECURITY_DESCRIPTOR