다음을 통해 공유


SetupDiSelectDevice 함수(setupapi.h)

SetupDiSelectDevice 함수는 DIF_SELECTDEVICE 요청에 대한 기본 처리기입니다.

구문

WINSETUPAPI BOOL SetupDiSelectDevice(
  [in]      HDEVINFO         DeviceInfoSet,
  [in, out] PSP_DEVINFO_DATA DeviceInfoData
);

매개 변수

[in] DeviceInfoSet

드라이버를 선택할 디바이스를 나타내는 디바이스 정보 요소가 포함된 디바이스 정보 집합 에 대한 핸들입니다.

[in, out] DeviceInfoData

디바이스 정보 요소를 지정하는 SP_DEVINFO_DATA 구조체에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다. 이 매개 변수를 지정하면 SetupDiSelectDevice가 지정된 디바이스에 대한 드라이버를 선택하고 DeviceInfoData를 설정합니다.ClassGuid를 선택한 드라이버에 대한 디바이스 설정 클래스의 GUID로 설정합니다. 이 매개 변수가 NULL인 경우 SetupDiSelectDeviceDeviceInfoSet에 대한 전역 클래스 드라이버 목록에서 선택한 드라이버를 설정합니다.

반환 값

함수가 성공하면 TRUE 를 반환합니다. 그렇지 않으면 FALSE 를 반환하고 GetLastError 호출을 통해 기록된 오류를 검색할 수 있습니다.

설명

SetupDiSelectDevice 는 사용자가 지정된 디바이스에 대한 드라이버 또는 디바이스가 지정되지 않은 경우 설정된 디바이스 정보를 선택할 수 있는 사용자 인터페이스를 처리합니다. 디바이스에 대한 SP_DEVINSTALL_PARAMS 구조의 Flags 필드를 설정하거나 디바이스가 지정되지 않은 경우 디바이스 정보 집합을 설정하면 호출자는 사용자가 OEM 설치 디스크에서 드라이버를 선택할 수 있도록 사용자 인터페이스의 특수 처리를 지정할 수 있습니다.

참고 클래스 설치 관리자만 SetupDiSelectDevice 를 호출해야 하며 , SetupDiSelectDevice 가 기본 드라이버 선택 작업을 완료한 후에 클래스 설치 관리자가 드라이버 선택 작업을 수행해야 하는 경우에만 호출해야 합니다. 이러한 상황에서는 설치 관리자가 DIF_SELECTDEVICE 요청을 처리할 때 클래스 설치 관리자가 SetupDiSelectDevice 를 직접 호출해야 합니다. 기본 처리기를 호출하는 방법에 대한 자세한 내용은 기본 DIF 코드 처리기 호출을 참조하세요.
 
SetupDiSelectDevice 는 주로 디바이스를 설치하기 전에 로컬 컴퓨터에서 디바이스에 대한 드라이버를 선택하도록 설계되었습니다. 디바이스 정보 집합이 원격 컴퓨터에 대한 경우 SetupDiSelectDevice 가 실패하지 않지만, 이후 디바이스 정보 집합을 원격 컴퓨터에서 작업을 지원하지 않는 DIF_Xxx 설치 요청 또는 SetupDiXxx 함수와 함께 사용할 수 없으므로 결과는 제한적입니다. 특히 디바이스 정보 집합은 원격 컴퓨터에 디바이스를 설치하기 위한 DIF_INSTALLDEVICE 설치 요청과 함께 입력으로 사용할 수 없습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Microsoft Windows 2000 이상 버전의 Windows에서 사용할 수 있습니다.
대상 플랫폼 데스크톱
머리글 setupapi.h(Setupapi.h 포함)
라이브러리 Setupapi.lib
DLL Setupapi.dll

추가 정보

SP_DEVINSTALL_PARAMS

SetupDiCallClassInstaller