SetupDiOpenDeviceInfoA 함수(setupapi.h)
SetupDiOpenDeviceInfo 함수는 디바이스 정보 집합에 아직 없는 경우 디바이스 인스턴스에 대한 디바이스 정보 요소를 디바이스 정보 집합에 추가하고 디바이스 정보 집합에서 디바이스 인스턴스의 디바이스 정보 요소를 식별하는 정보를 검색합니다.
통사론
WINSETUPAPI BOOL SetupDiOpenDeviceInfoA(
[in] HDEVINFO DeviceInfoSet,
[in] PCSTR DeviceInstanceId,
[in, optional] HWND hwndParent,
[in] DWORD OpenFlags,
[out, optional] PSP_DEVINFO_DATA DeviceInfoData
);
매개 변수
[in] DeviceInfoSet
[in] DeviceInstanceId
디바이스의 디바이스 인스턴스 식별자를 제공하는 NULL로 끝나는 문자열에 대한 포인터입니다(예: "Root*PNP0500\0000").
[in, optional] hwndParent
디바이스 설치와 관련된 모든 사용자 인터페이스에 사용할 최상위 창에 대한 핸들입니다.
[in] OpenFlags
디바이스 정보 요소를 여는 방법을 제어하는 DWORD 유형의 변수입니다. 이 매개 변수의 값은 다음 중 하나 이상이 될 수 있습니다.
DIOD_CANCEL_REMOVE
이 플래그를 지정하고 디바이스가 제거 보류 중으로 표시된 경우 운영 체제는 보류 중인 제거를 취소합니다.
DIOD_INHERIT_CLASSDRVS
이 플래그를 지정하면 결과 디바이스 정보 요소는 디바이스 정보 집합과 연결된 클래스 드라이버 목록(있는 경우)을 상속합니다. 또한 디바이스 정보 집합에 대해 선택한 드라이버가 있는 경우 새 디바이스 정보 요소에 대해 동일한 드라이버가 선택됩니다.
디바이스 정보 요소가 이미 있는 경우 해당 클래스 드라이버 목록이 있는 경우 상속된 목록으로 대체됩니다.
[out, optional] DeviceInfoData
DeviceInstanceId지정된 디바이스 인스턴스의 디바이스 정보 요소에 대한 정보를 수신하는 호출자 제공 SP_DEVINFO_DATA 구조체에 대한 포인터입니다. 호출자는 cbSizesizeof(SP_DEVINFO_DATA)설정해야 합니다. 이 매개 변수는 선택 사항이며 NULL
반환 값
SetupDiOpenDeviceInfo 성공하면 TRUE 반환합니다. 그렇지 않으면 함수는 FALSE
발언
이 디바이스 인스턴스가 연결된 클래스가 있는 집합에 추가되는 경우 디바이스 클래스는 동일해야 합니다. 그렇지 않으면 호출이 실패합니다. 이 경우 GetLastError
새 디바이스 정보 요소가 성공적으로 열렸지만 호출자 제공 DeviceInfoData 버퍼가 잘못된 경우 이 함수는 FALSE반환합니다. 이 경우 GetLastError
메모
setupapi.h 헤더는 SETUPDiOpenDeviceInfo를 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Microsoft Windows 2000 이상 버전의 Windows에서 사용할 수 있습니다. |
대상 플랫폼 | 바탕 화면 |
헤더 | setupapi.h(Setupapi.h 포함) |
라이브러리 | Setupapi.lib |
참고 항목
setupDiCreateDeviceInfo
SetupDiEnumDeviceInfo