SetupDiGetDeviceRegistryPropertyA 함수(setupapi.h)

SetupDiGetDeviceRegistryProperty 함수는 지정된 플러그 앤 플레이 디바이스 속성을 검색합니다.

구문

WINSETUPAPI BOOL SetupDiGetDeviceRegistryPropertyA(
  [in]            HDEVINFO         DeviceInfoSet,
  [in]            PSP_DEVINFO_DATA DeviceInfoData,
  [in]            DWORD            Property,
  [out, optional] PDWORD           PropertyRegDataType,
  [out, optional] PBYTE            PropertyBuffer,
  [in]            DWORD            PropertyBufferSize,
  [out, optional] PDWORD           RequiredSize
);

매개 변수

[in] DeviceInfoSet

플러그 앤 플레이 속성을 검색할 디바이스를 나타내는 디바이스 정보 요소가 포함된 디바이스 정보 집합 에 대한 핸들입니다.

[in] DeviceInfoData

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

[in] Property

검색할 속성을 지정하는 다음 값 중 하나입니다.

SPDRP_ADDRESS

함수는 디바이스의 주소를 검색합니다.

SPDRP_BUSNUMBER

함수는 디바이스의 버스 번호를 검색합니다.

SPDRP_BUSTYPEGUID

함수는 디바이스의 버스 유형에 대한 GUID를 검색합니다.

SPDRP_CAPABILITIES

함수는 DWORD에서 다음 CM_DEVCAP_Xxx 플래그 중 비트 OR을 검색합니다. 이러한 플래그로 표시되는 디바이스 기능은 DEVICE_CAPABILITIES 구조체의 멤버가 나타내는 디바이스 기능에 해당합니다. CM_DEVCAP_Xxx 상수는 Cfgmgr32.h에 정의되어 있습니다.

CM_DEVCAP_Xxx 플래그 해당 DEVICE_CAPABILITIES 구조체 멤버
CM_DEVCAP_LOCKSUPPORTED LockSupported
CM_DEVCAP_EJECTSUPPORTED EjectSupported
CM_DEVCAP_REMOVABLE 이동식
CM_DEVCAP_DOCKDEVICE DockDevice
CM_DEVCAP_UNIQUEID Uniqueid
CM_DEVCAP_SILENTINSTALL SilentInstall
CM_DEVCAP_RAWDEVICEOK RawDeviceOK
CM_DEVCAP_SURPRISEREMOVALOK SurpriseRemovalOK
CM_DEVCAP_HARDWAREDISABLED HardwareDisabled
CM_DEVCAP_NONDYNAMIC 비다이내믹
 

SPDRP_CHARACTERISTICS

함수는 DWORD에서 디바이스의 특성 플래그에 대한 비트 OR을 검색합니다. Wdm.h 및 Ntddk.h에 정의된 이러한 플래그에 대한 설명은 IoCreateDevice 함수의 DeviceCharacteristics 매개 변수를 참조하세요.

SPDRP_CLASS

함수는 디바이스의 디바이스 설정 클래스 를 포함하는 REG_SZ 문자열을 검색합니다.

SPDRP_CLASSGUID

함수는 디바이스의 디바이스 설정 클래스를 나타내는 GUID가 포함된 REG_SZ 문자열을 검색합니다.

SPDRP_COMPATIBLEIDS

함수는 디바이스에 대해 호환되는 ID 목록을 포함하는 REG_MULTI_SZ 문자열을 검색합니다. 호환되는 ID에 대한 자세한 내용은 디바이스 식별 문자열을 참조하세요.

SPDRP_CONFIGFLAGS

함수는 DWORD 값에서 디바이스 구성 플래그의 비트 OR을 검색합니다. 구성 플래그는 Regstr.h에 정의된 CONFIGFLAG_Xxx 비트 마스크로 표시됩니다.

SPDRP_DEVICE_POWER_DATA

(Windows XP 이상) 함수는 디바이스의 전원 관리 정보를 포함하는 CM_POWER_DATA 구조를 검색합니다.

SPDRP_DEVICEDESC

함수는 디바이스에 대한 설명이 포함된 REG_SZ 문자열을 검색합니다.

SPDRP_DEVTYPE

함수는 디바이스 유형을 나타내는 DWORD 값을 검색합니다. 자세한 내용은 디바이스 유형 지정을 참조하세요.

SPDRP_DRIVER

함수는 디바이스의 소프트웨어 키 ( 드라이버 키라고도 함)를 식별하는 문자열을 검색합니다. 드라이버 키에 대한 자세한 내용은 레지스트리 트리 및 디바이스 및 드라이버용 키를 참조하세요.

SPDRP_ENUMERATOR_NAME

함수는 디바이스의 열거자의 이름을 포함하는 REG_SZ 문자열을 검색합니다.

SPDRP_EXCLUSIVE

함수는 사용자가 디바이스를 단독으로 사용할 수 있는지 여부를 나타내는 DWORD 값을 검색합니다. 배타적 사용이 허용되는 경우 반환된 값은 1이거나, 그렇지 않으면 0입니다. 자세한 내용은 IoCreateDevice를 참조하세요.

SPDRP_FRIENDLYNAME

함수는 디바이스의 이름을 포함하는 REG_SZ 문자열을 검색합니다.

SPDRP_HARDWAREID

함수는 디바이스의 하드웨어 ID 목록을 포함하는 REG_MULTI_SZ 문자열을 검색합니다. 하드웨어 ID에 대한 자세한 내용은 디바이스 식별 문자열을 참조하세요.

SPDRP_INSTALL_STATE

(Windows XP 이상) 함수는 디바이스의 설치 상태를 나타내는 DWORD 값을 검색합니다. 설치 상태는 Cfgmgr32.h에 정의된 CM_INSTALL_STATE_Xxx 값 중 하나로 표시됩니다. CM_INSTALL_STATE_Xxx 값은 DEVICE_INSTALL_STATE 열거형 값에 해당합니다.

SPDRP_LEGACYBUSTYPE

함수는 디바이스의 레거시 버스 유형을 INTERFACE_TYPE 값으로 검색합니다( Wdm.hNtddk.h에 정의됨).

SPDRP_LOCATION_INFORMATION

함수는 디바이스의 하드웨어 위치를 포함하는 REG_SZ 문자열을 검색합니다.

SPDRP_LOCATION_PATHS

(Windows Server 2003 이상) 함수는 디바이스 트리에서 디바이스의 위치를 나타내는 REG_MULTI_SZ 문자열을 검색합니다.

SPDRP_LOWERFILTERS

함수는 디바이스의 하위 필터 드라이버 이름을 포함하는 REG_MULTI_SZ 문자열을 검색합니다.

SPDRP_MFG

함수는 디바이스 제조업체의 이름을 포함하는 REG_SZ 문자열을 검색합니다.

SPDRP_PHYSICAL_DEVICE_OBJECT_NAME

함수는 디바이스의 PDO와 연결된 이름을 포함하는 REG_SZ 문자열을 검색합니다. 자세한 내용은 IoCreateDevice를 참조하세요.

SPDRP_REMOVAL_POLICY

(Windows XP 이상) 함수는 디바이스의 현재 제거 정책을 Cfgmgr32.h에 정의된 CM_REMOVAL_POLICY_Xxx 값 중 하나를 포함하는 DWORD로 검색합니다.

SPDRP_REMOVAL_POLICY_HW_DEFAULT

(Windows XP 이상) 함수는 디바이스의 하드웨어 지정 기본 제거 정책을 Cfgmgr32.h에 정의된 CM_REMOVAL_POLICY_Xxx 값 중 하나를 포함하는 DWORD로 검색합니다.

SPDRP_REMOVAL_POLICY_OVERRIDE

(Windows XP 이상) 함수는 Cfgmgr32.h에 정의된 CM_REMOVAL_POLICY_Xxx 값 중 하나를 포함하는 DWORD로 레지스트리에서 디바이스의 재정의 제거 정책(있는 경우)을 검색합니다.

SPDRP_SECURITY

함수는 디바이스에 대한 SECURITY_DESCRIPTOR 구조를 검색합니다.

SPDRP_SECURITY_SDS

함수는 디바이스의 보안 설명자가 포함된 REG_SZ 문자열을 검색합니다. 보안 설명자 문자열에 대한 자세한 내용은 보안 설명자 정의 언어(Windows)를 참조하세요. 보안 설명자 문자열 형식에 대한 자세한 내용은 보안 설명자 정의 언어(Windows)를 참조하세요.

SPDRP_SERVICE

함수는 디바이스의 서비스 이름을 포함하는 REG_SZ 문자열을 검색합니다.

SPDRP_UI_NUMBER

함수는 디바이스 DEVICE_CAPABILITIES 구조의UINumber 멤버 값으로 설정된 DWORD 값을 검색합니다.

SPDRP_UI_NUMBER_DESC_FORMAT

함수는 UINumber 값을 표시하는 데 사용되는 형식 문자열(REG_SZ)을 검색합니다.

SPDRP_UPPERFILTERS

함수는 디바이스의 상위 필터 드라이버 이름을 포함하는 REG_MULTI_SZ 문자열을 검색합니다.

[out, optional] PropertyRegDataType

검색되는 속성의 데이터 형식을 수신하는 변수에 대한 포인터입니다. 표준 레지스트리 데이터 형식 중 하나입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

[out, optional] PropertyBuffer

검색되는 속성을 수신하는 버퍼에 대한 포인터입니다. 이 매개 변수가 NULL로 설정되고 PropertyBufferSize 도 0으로 설정된 경우 함수는 RequiredSize에서 버퍼에 필요한 크기를 반환합니다.

[in] PropertyBufferSize

PropertyBuffer 버퍼의 크기(바이트)입니다.

[out, optional] RequiredSize

요청된 속성에 대한 데이터를 보유하는 데 필요한 PropertyBuffer 버퍼의 필요한 크기(바이트)를 수신하는 DWORD 형식의 변수에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.

반환 값

SetupDiGetDeviceRegistryProperty 는 호출이 성공하면 TRUE 를 반환합니다. 그렇지 않으면 FALSE 를 반환하고 GetLastError를 호출하여 기록된 오류를 검색할 수 있습니다. SetupDiGetDeviceRegistryProperty 는 디바이스에 대해 요청된 속성이 없거나 속성 데이터가 유효하지 않은 경우 ERROR_INVALID_DATA 오류 코드를 반환합니다.

설명

참고

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

요구 사항

   
지원되는 최소 클라이언트 Microsoft Windows 2000 이상 버전의 Windows에서 사용할 수 있습니다.
대상 플랫폼 DesktopFor universal, call CM_Get_DevNode_Registry_Property
머리글 setupapi.h(Setupapi.h 포함)
라이브러리 Setupapi.lib

추가 정보

IoGetDeviceProperty

SetupDiGetClassRegistryProperty

SetupDiSetClassRegistryProperty

SetupDiSetDeviceRegistryProperty