다음을 통해 공유


RegOpenUserClassesRoot 함수(winreg.h)

지정된 사용자의 HKEY_CLASSES_ROOT 키에 대한 핸들을 검색합니다. 사용자는 액세스 토큰으로 식별됩니다. 반환된 키에는 HKEY_LOCAL_MACHINE\Software\Classes 키의 내용을 사용자의 레지스트리 하이브에 있는 Software\Classes 키의 내용과 병합하는 레지스트리 보기가 있습니다. 자세한 내용은 HKEY_CLASSES_ROOT 키를 참조하세요.

구문

LSTATUS RegOpenUserClassesRoot(
  [in]  HANDLE hToken,
        DWORD  dwOptions,
  [in]  REGSAM samDesired,
  [out] PHKEY  phkResult
);

매개 변수

[in] hToken

관심 있는 사용자를 식별하는 기본 또는 가장 액세스 토큰에 대한 핸들입니다. LogonUser, CreateRestrictedToken, DuplicateToken, DuplicateTokenEx, OpenProcessToken 또는 OpenThreadToken 함수에 대한 호출에서 반환되는 토큰 핸들일 수 있습니다.

핸들에는 TOKEN_QUERY 액세스 권한이 있어야 합니다. 자세한 내용은 Access-Token 개체에 대한 액세스 권한을 참조하세요.

dwOptions

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

[in] samDesired

키에 대한 원하는 액세스 권한을 지정하는 마스크입니다. 키의 보안 설명자가 호출 프로세스에 대해 요청된 액세스를 허용하지 않으면 함수가 실패합니다. 자세한 내용은 레지스트리 키 보안 및 액세스 권한을 참조하세요.

[out] phkResult

열린 키에 대한 핸들을 수신하는 변수에 대한 포인터입니다. 반환된 핸들이 더 이상 필요하지 않으면 RegCloseKey 함수를 호출하여 닫습니다.

반환 값

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

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

설명

RegOpenUserClassesRoot 함수를 사용하면 대화형 사용자 이외의 사용자에 대해 병합된 HKEY_CLASSES_ROOT 정보를 검색할 수 있습니다. 예를 들어 클라이언트/서버 애플리케이션의 서버 구성 요소는 RegOpenUserClassesRoot 를 사용하여 클라이언트에 대한 병합된 정보를 검색할 수 있습니다.

지정된 사용자의 사용자 프로필이 로드되지 않으면 RegOpenUserClassesRoot가 실패합니다. 사용자가 대화형으로 로그온하면 시스템에서 자동으로 사용자의 프로필을 로드합니다. 다른 사용자의 경우 LoadUserProfile 함수를 호출하여 사용자의 프로필을 로드할 수 있습니다. 그러나 LoadUserProfile 은 시간이 많이 걸릴 수 있으므로 사용자의 병합된 HKEY_CLASSES_ROOT 정보가 반드시 필요한 경우가 아니면 이 용도로 호출하지 마세요.

대화형 로그온 사용자의 보안 컨텍스트에서 실행되는 애플리케이션은 RegOpenUserClassesRoot를 사용할 필요가 없습니다. 이러한 애플리케이션은 RegOpenKeyEx 함수를 호출하여 대화형 사용자에 대한 HKEY_CLASSES_ROOT 키의 병합된 보기를 검색할 수 있습니다.

요구 사항

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

추가 정보

LoadUserProfile

RegCloseKey

RegOpenKeyEx

레지스트리 함수

레지스트리 개요