DIF_ALLOW_INSTALL
DIF_ALLOW_INSTALL 요청은 Windows에서 디바이스 설치를 진행할 수 있는지 여부를 설치 관리자에게 요청합니다.
보낸 경우
디바이스에 대한 드라이버를 선택한 후 디바이스를 설치하기 전에.
처리할 사람
클래스 공동 설치 관리자 |
처리 가능 |
디바이스 공동 설치 관리자 |
처리하지 않아야 합니다. |
클래스 설치 관리자 |
처리 가능 |
설치 관리자 입력
DeviceInfoSet
디바이스가 포함된 디바이스 정보 집합 에 핸들을 제공합니다.
DeviceInfoData
디바이스 정보 집합에서 디바이스를 식별하는 SP_DEVINFO_DATA 구조체에 대한 포인터를 제공합니다.
디바이스 설치 매개 변수
DeviceInfoData와 연결된 디바이스 설치 매개 변수(SP_DEVINSTALL_PARAMS)가 있습니다.
설치 관리자 출력
설치 관리자 반환 값
공동 설치 관리자는 NO_ERROR 또는 Win32 오류를 반환할 수 있습니다. 공동 설치 관리자는 이 DIF 요청에 대한 ERROR_DI_POSTPROCESSING_REQUIRED 반환해서는 안 됩니다.
클래스 설치 관리자는 일반적으로 ERROR_DI_DO_DEFAULT 또는 Win32 오류 코드를 반환합니다.
이 DIF 요청에 대한 일반적인 Win32 오류 코드에는 ERROR_DI_DONT_INSTALL 및 ERROR_NON_WINDOWS_NT_DRIVER 포함됩니다.
참고 클래스 설치 관리자 및 공동 설치 관리자는 디바이스 설치가 실패하기 때문에 ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION 주조해서는 안 됩니다. 디바이스 설치에 사용자 상호 작용이 필요한 경우 클래스 설치 관리자 및 공동 설치 관리자는 마침 설치 작업을 지원해야 합니다.
기본 DIF 코드 처리기
없음
설치 관리자 작업
DIF_ALLOW_INSTALL 요청에 대한 응답으로 설치 관리자는 Windows에서 디바이스를 설치할 수 있는지 여부를 확인합니다.
선택한 드라이버가 올바르지 않다고 판단하거나(예: 드라이버가 NT 기반 운영 체제에서 제대로 작동하지 않는 Windows 9x 전용 드라이버인 경우) 선택한 드라이버에 버그가 있는 것으로 확인되면 설치 관리자가 이 요청에 실패할 수 있습니다.
DI_QUIETINSTALL 플래그가 디바이스 설치 매개 변수에 설정되어 있고 설치 관리자가 디바이스 설치 중에 UI를 표시해야 하는 경우 설치 관리자가 이 요청에 실패할 수 있습니다. 그러나 이 오류는 일반적으로 설치 관리자가 DIF_NEWDEVICEWIZARD_FINISHINSTALL 요청에 대한 응답으로 모든 UI 페이지를 제공할 수 있기 때문에 드물게 발생합니다. 이 경우 UI는 자동 플래그가 설정된 DIF_ALLOW_INSTALL 요청을 설치 관리자가 성공하는 것을 방지하지 않습니다. 그러나 설치 관리자가 UI를 마침 설치 사례로 제한할 수 없는 경우 DI_QUIETINSTALL 플래그가 설정된 경우 설치 관리자가 이 DIF 요청에 실패해야 합니다. 예를 들어 설치 관리자가 UI를 표시하는 공급업체 제공 코드를 호출하는 경우 이러한 제한이 있을 수 있습니다.
설치 관리자가 이 DIF 요청에 실패하면 Windows에서 설치를 중지합니다.
설치 관리자가 이 DIF 요청에 실패하고 DI_QUIETINSTALL 디바이스 설치 매개 변수에 설정되지 않은 경우 설치 관리자는 디바이스가 설치되지 않는 이유를 설명하는 메시지가 포함된 대화 상자를 표시해야 합니다.
DIF 코드에 대한 자세한 내용은 DIF 코드 처리를 참조하세요.
요구 사항
Version |
Microsoft Windows 2000 이상 버전의 Windows에서 지원됩니다. |
헤더 |
Setupapi.h(Setupapi.h 포함) |