다음을 통해 공유


SetupDiCreateDevRegKeyA 함수(setupapi.h)

SetupDiCreateDevRegKey 함수는 디바이스별 구성 정보에 대한 레지스트리 키를 만들고 키에 대한 핸들을 반환합니다.

통사론

WINSETUPAPI HKEY SetupDiCreateDevRegKeyA(
  [in]           HDEVINFO         DeviceInfoSet,
  [in]           PSP_DEVINFO_DATA DeviceInfoData,
  [in]           DWORD            Scope,
  [in]           DWORD            HwProfile,
  [in]           DWORD            KeyType,
  [in, optional] HINF             InfHandle,
  [in, optional] PCSTR            InfSectionName
);

매개 변수

[in] DeviceInfoSet

레지스트리 키를 만들 디바이스를 나타내는 디바이스 정보 요소가 포함된 디바이스 정보 집합에 대한 핸들입니다.

[in] DeviceInfoData

DeviceInfoSet디바이스 정보 요소를 지정하는 SP_DEVINFO_DATA 구조체에 대한 포인터입니다.

[in] Scope

만들 레지스트리 키의 범위입니다. 범위는 정보가 저장되는 위치를 결정합니다. 만든 키는 전역 또는 하드웨어 프로필 관련 키일 수 있습니다. 다음 값 중 하나일 수 있습니다.

DICS_FLAG_GLOBAL

전역 구성 정보를 저장할 키를 만듭니다. 이 정보는 특정 하드웨어 프로필에만 해당되지 않습니다. NT 기반 운영 체제에서는 HKEY_LOCAL_MACHINE루팅된 키를 만듭니다. 열린 정확한 키는 KeyType 매개 변수의 값에 따라 달라집니다.

DICS_FLAG_CONFIGSPECIFIC

하드웨어 프로필 관련 구성 정보를 저장하는 키를 만듭니다. 이 키는 HKEY_LOCAL_MACHINE대신 하드웨어 프로필 특정 분기 중 하나에 루팅됩니다.

[in] HwProfile

HwProfileFlags 키를 만들 하드웨어 프로필이 SPDICS_FLAG_CONFIGSPECIFIC. HwProfile 0이면 현재 하드웨어 프로필의 키가 만들어집니다. HwProfileFlags SPDICS_FLAG_GLOBAL 경우 HwProfile 무시됩니다.

[in] KeyType

만들 레지스트리 스토리지 키의 유형입니다. 다음 값 중 하나일 수 있습니다.

DIREG_DEV

디바이스에 대한 하드웨어 키 만듭니다.

DIREG_DRV

디바이스에 대한 소프트웨어 키 만듭니다.

[in, optional] InfHandle

새로 만든 키에 대해 실행할 INF DDInstall 섹션이 포함된 열린 INF 파일에 대한 핸들입니다. 이 매개 변수는 선택 사항이며 NULL수 있습니다. 이 매개 변수를 지정하면 InfSectionName 지정해야 합니다.

[in, optional] InfSectionName

InfHandle지정된 INF 파일에 있는 INF DDInstall 섹션의 이름입니다. 이 섹션은 새로 만든 키에 대해 실행됩니다. 이 매개 변수는 선택 사항이며 NULL수 있습니다. 이 매개 변수를 지정하는 경우 InfHandle 지정해야 합니다.

반환 값

SetupDiCreateDevRegKey 성공하면 함수는 디바이스별 구성 데이터를 저장하고 검색할 수 있는 지정된 레지스트리 키에 대한 핸들을 반환합니다. SetupDiCreateDevRegKey 실패하면 함수는 INVALID_HANDLE_VALUE 반환합니다. GetLastError 호출하여 확장된 오류 정보를 가져옵니다.

발언

SetupDiCreateDevRegKey 호출자는 Administrators 그룹의 구성원이어야 합니다.

RegCloseKey호출하여 SetupDiCreateDevRegKey 반환된 핸들을 닫습니다.

지정된 키가 이미 있는 경우 SetupDiCreateDevRegKey 해당 키에 대한 핸들을 반환합니다. 그렇지 않으면 SetupDiCreateDevRegKey 지정된 키를 만들고 새 키에 대한 핸들을 반환합니다. Windows Server 2003 이상 버전의 Windows의 경우 키 핸들에는 KEY_READ KEY_WRITE 액세스만 있습니다. 이전 Windows 버전의 경우 이 핸들에는 KEY_ALL_ACCESS 액세스 권한이 있습니다.

SetupDiCreateDevRegKey 전에 지정된 디바이스 인스턴스를 등록해야 합니다. 그러나 운영 체제는 PnP 디바이스 인스턴스를 자동으로 등록합니다. 비 PnP 디바이스 인스턴스를 등록하는 방법에 대한 자세한 내용은 SetupDiRegisterDeviceInfo참조하세요.

레이아웃 파일(INF 버전 섹션LayoutFile 항목에 의해 지정됨)을 사용하는 설치의 경우 SetupDiCreateDevRegKey 호출 하기 전에 SetupOpenAppendInfFile 호출하여 레이아웃 파일을 열어야 합니다(Microsoft Windows SDK 설명서에 설명됨).

제공된 디바이스 정보 집합에 원격 시스템에 대한 디바이스 정보 요소가 포함되어 있고 infHandle 및 InfSectionName 경우 만들기 요청이 실패하고 GetLastError 대한 후속 호출이 ERROR_REMOTE_REQUEST_UNSUPPORTED 반환됩니다.

메모

setupapi.h 헤더는 SETUPDiCreateDevRegKey를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한 규칙을 참조하세요.

요구 사항

요구
지원되는 최소 클라이언트 Microsoft Windows 2000 이상 버전의 Windows에서 사용할 수 있습니다.
대상 플랫폼 바탕 화면
헤더 setupapi.h(Setupapi.h 포함)
라이브러리 Setupapi.lib

참고 항목

setupDiCreateDeviceInfo

SetupDiGetHwProfileList

SetupDiOpenDevRegKey

SetupDiRegisterDeviceInfo