미리 정의된 키

애플리케이션은 레지스트리에 데이터를 추가하려면 먼저 키를 열어야 합니다. 키를 열려면 애플리케이션이 이미 열려 있는 레지스트리의 다른 키에 대한 핸들을 제공해야 합니다. 시스템은 항상 열려 있는 미리 정의된 키를 정의합니다. 미리 정의된 키는 애플리케이션이 레지스트리에서 탐색하는 데 도움이 되며 시스템 관리자가 데이터 범주를 조작할 수 있는 도구를 개발할 수 있도록 합니다. 레지스트리에 데이터를 추가하는 애플리케이션은 항상 미리 정의된 키의 프레임워크 내에서 작동해야 하므로 관리 도구는 새 데이터를 찾고 사용할 수 있습니다.

애플리케이션은 이러한 키에 대한 핸들을 레지스트리의 진입점으로 사용할 수 있습니다. 이러한 핸들은 레지스트리의 모든 구현에 유효하지만 핸들의 사용은 플랫폼마다 다를 수 있습니다. 또한 다른 미리 정의된 핸들은 특정 플랫폼에 대해 정의되었습니다. 다음은 미리 정의된 키에 대한 핸들입니다.

Handle 설명
HKEY_CLASSES_ROOT
이 키에 종속된 레지스트리 항목은 문서의 형식(또는 클래스)과 해당 형식과 연결된 속성을 정의합니다. 셸 및 COM 애플리케이션은 이 키 아래에 저장된 정보를 사용합니다.
또한 이 키는 DDE 및 OLE 지원에 대한 정보를 저장하여 Windows 3.1 등록 데이터베이스와 이전 버전과의 호환성을 제공합니다. 파일 뷰어 및 사용자 인터페이스 확장은 OLE 클래스 식별자를 HKEY_CLASSES_ROOT 저장하며 in-process 서버는 이 키에 등록됩니다.
이 핸들은 다른 사용자를 가장하는 서비스 또는 애플리케이션에서 사용하면 안 됩니다.
자세한 내용은 HKEY_CLASSES_ROOT 참조하세요.
HKEY_CURRENT_CONFIG
로컬 컴퓨터 시스템의 현재 하드웨어 프로필에 대한 정보를 포함합니다. HKEY_CURRENT_CONFIG 아래의 정보는 현재 하드웨어 구성과 표준 구성 간의 차이점만 설명합니다. 표준 하드웨어 구성에 대한 정보는 HKEY_LOCAL_MACHINE소프트웨어시스템 키 아래에 저장됩니다.
HKEY_CURRENT_CONFIGHKEY_LOCAL_MACHINE\System\CurrentControlSet\Hardware Profiles\Current별칭입니다.
자세한 내용은 HKEY_CURRENT_CONFIG 참조하세요.
HKEY_CURRENT_USER
이 키에 종속된 레지스트리 항목은 현재 사용자의 기본 설정을 정의합니다. 이러한 기본 설정에는 환경 변수의 설정, 프로그램 그룹, 색, 프린터, 네트워크 연결 및 애플리케이션 기본 설정에 대한 데이터가 포함됩니다. 이 키를 사용하면 현재 사용자의 설정을 더 쉽게 설정할 수 있습니다. 키는 HKEY_USERS 현재 사용자의 분기에 매핑됩니다. HKEY_CURRENT_USER 소프트웨어 공급업체는 애플리케이션 내에서 사용할 현재 사용자별 기본 설정을 저장합니다. 예를 들어 Microsoft는 애플리케이션에서 사용할 HKEY_CURRENT_USER\Software\Microsoft 키를 만들고 각 애플리케이션은 Microsoft 키 아래에 자체 하위 키를 만듭니다.
HKEY_CURRENT_USERHKEY_USERS 간의 매핑은 프로세스별로 수행되며 프로세스가 HKEY_CURRENT_USER 처음으로 참조할 때 설정됩니다. 매핑은 HKEY_CURRENT_USER 참조하는 첫 번째 스레드의 보안 컨텍스트를 기반으로 합니다. 이 보안 컨텍스트에 HKEY_USERS 로드된 레지스트리 하이브가 없는 경우 매핑은 HKEY_USERS\.Default로 설정됩니다. 이 매핑이 설정되면 스레드의 보안 컨텍스트가 변경되더라도 유지됩니다.
HKEY_CURRENT_USER\Software\Classes 아래의 항목을 제외한 HKEY_CURRENT_USER 모든 레지스트리 항목은 로밍 사용자 프로필의 사용자별 레지스트리 부분에 포함됩니다. 로밍 사용자 프로필에서 다른 항목을 제외하려면 HKEY_CURRENT_USER_LOCAL_SETTINGS 저장합니다.
이 핸들은 다른 사용자를 가장하는 서비스 또는 애플리케이션에서 사용하면 안 됩니다. 대신 RegOpenCurrentUser 함수를 호출합니다.
자세한 내용은 HKEY_CURRENT_USER 참조하세요.
HKEY_CURRENT_USER_LOCAL_SETTINGS
이 키에 종속된 레지스트리 항목은 컴퓨터에 로컬인 현재 사용자의 기본 설정을 정의합니다. 이러한 항목은 로밍 사용자 프로필의 사용자별 레지스트리 부분에 포함되지 않습니다. Windows Server 2008, Windows Vista, Windows Server 2003 및 Windows XP/2000: 이 키는 Windows 7 및 Windows Server 2008 R2부터 지원됩니다.

HKEY_LOCAL_MACHINE
이 키에 종속된 레지스트리 항목은 버스 유형, 시스템 메모리 및 설치된 하드웨어 및 소프트웨어에 대한 데이터를 포함하여 컴퓨터의 물리적 상태를 정의합니다. 여기에는 플러그 앤 플레이 정보(시스템에 있었던 모든 하드웨어의 전체 목록을 포함하는 열거형 분기), 네트워크 로그온 기본 설정, 네트워크 보안 정보, 소프트웨어 관련 정보(예: 서버 이름 및 서버 위치) 및 기타 시스템 정보를 포함하여 현재 구성 데이터를 보유하는 하위 키가 포함되어 있습니다.
자세한 내용은 HKEY_LOCAL_MACHINE 참조하세요.
HKEY_PERFORMANCE_DATA
이 키에 종속된 레지스트리 항목을 사용하면 성능 데이터에 액세스할 수 있습니다. 데이터는 실제로 레지스트리에 저장되지 않습니다. 레지스트리 함수로 인해 시스템에서 원본에서 데이터를 수집합니다.
HKEY_PERFORMANCE_NLSTEXT
이 키에 종속된 레지스트리 항목은 컴퓨터 시스템이 실행 중인 영역의 로컬 언어로 카운터를 설명하는 텍스트 문자열을 참조합니다. 이러한 항목은 Regedit.exe 및 Regedt32.exe 사용할 수 없습니다. Windows 2000: 이 키는 지원되지 않습니다.

HKEY_PERFORMANCE_TEXT
이 키에 종속된 레지스트리 항목은 미국 영어로 카운터를 설명하는 텍스트 문자열을 참조합니다. 이러한 항목은 Regedit.exe 및 Regedt32.exe 사용할 수 없습니다. Windows 2000: 이 키는 지원되지 않습니다.

HKEY_USERS
이 키에 종속된 레지스트리 항목은 로컬 컴퓨터의 새 사용자에 대한 기본 사용자 구성과 현재 사용자의 사용자 구성을 정의합니다.

RegOverridePredefKey 함수를 사용하면 미리 정의된 레지스트리 키를 레지스트리의 지정된 키에 매핑할 수 있습니다. instance 경우 소프트웨어 설치 프로그램은 DLL 구성 요소를 설치하기 전에 미리 정의된 키를 다시 매핑할 수 있습니다. 이렇게 하면 설치 프로그램에서 DLL의 설치 프로시저가 미리 정의된 키에 쓰는 정보를 쉽게 검사할 수 있습니다.

RegDisablePredefinedCacheRegDisablePredefinedCacheEx 함수는 미리 정의된 레지스트리 핸들에 대한 핸들 캐싱을 사용하지 않도록 설정합니다. 가장을 사용하는 서비스는 미리 정의된 레지스트리 핸들을 사용하기 전에 RegDisablePredefinedCacheEx 를 호출해야 합니다.

미리 정의된 핸들은 스레드로부터 안전하지 않습니다. 한 스레드에서 미리 정의된 핸들을 닫으면 핸들을 사용하는 다른 스레드에 영향을 줍니다.