다음을 통해 공유


DIF_INSTALLINTERFACES

DIF_INSTALLINTERFACES 요청을 사용하면 설치 관리자가 디바이스에 대한 디바이스 인터페이스 등록에 참여할 수 있습니다.

보낸 경우

디바이스 공동 설치 관리자를 등록한 후 디바이스 설치를 완료하기 전에.

처리할 사람

클래스 공동 설치 관리자

처리 가능

디바이스 공동 설치 관리자

처리 가능

클래스 설치 관리자

처리 가능

설치 관리자 입력

DeviceInfoSet
디바이스가 포함된 디바이스 정보 집합 에 핸들을 제공합니다.

DeviceInfoData
디바이스 정보 집합에서 디바이스를 식별하는 SP_DEVINFO_DATA 구조체에 대한 포인터를 제공합니다.

디바이스 설치 매개 변수
DeviceInfoData와 연결된 디바이스 설치 매개 변수(SP_DEVINSTALL_PARAMS)가 있습니다.

클래스 설치 매개 변수
없음

설치 관리자 출력

디바이스 설치 매개 변수
설치 관리자는 디바이스 설치 매개 변수를 수정할 수 있지만 일반적으로 이 DIF 요청에는 수정되지 않습니다.

설치 관리자 반환 값

공동 설치 관리자는 NO_ERROR, ERROR_DI_POSTPROCESSING_REQUIRED 또는 Win32 오류 코드를 반환할 수 있습니다.

클래스 설치 관리자가 이 요청을 성공적으로 처리하고 SetupDiCallClassInstaller 가 이후에 기본 처리기를 호출해야 하는 경우 클래스 설치 관리자는 ERROR_DI_DO_DEFAULT 반환합니다.

클래스 설치 관리자가 기본 처리기를 직접 호출하는 등 이 요청을 성공적으로 처리하는 경우 클래스 설치 관리자는 NO_ERROR 반환해야 하며 SetupDiCallClassInstaller 는 이후에 기본 처리기를 다시 호출하지 않습니다.

참고 클래스 설치 관리자는 기본 처리기를 직접 호출할 수 있지만 클래스 설치 관리자는 기본 처리기의 작업을 대체하려고 시도해서는 안 됩니다.

기본 처리기를 호출하는 방법에 대한 자세한 내용은 기본 DIF 코드 처리기 호출을 참조하세요.

클래스 설치 관리자에 오류가 발생하면 설치 관리자가 적절한 Win32 오류 코드를 반환해야 하며 SetupDiCallClassInstaller 는 이후에 기본 처리기를 호출하지 않습니다.

기본 DIF 코드 처리기

SetupDiInstallDeviceInterfaces

설치 관리자 작업

DIF_INSTALLINTERFACES 요청에 대한 응답으로 설치 관리자는 INF 파일을 통해 인터페이스를 등록하는 대신 프로그래밍 방식으로 디바이스 인터페이스를 등록할 수 있습니다. 일반적으로 공급업체에서 제공하는 설치 관리자는 이 DIF 요청을 처리하지 않습니다.

DI_NOFILECOPY 플래그를 설정하지 않는 한 이 DIF 요청을 처리하는 설치 관리자는 디바이스 인터페이스에 필요한 파일을 복사해야 합니다.

DI_NOFILECOPY 플래그가 명확하지만 DI_NOVCP 플래그가 설정된 경우 설치 관리자는 제공된 파일 큐에 파일 작업을 큐에 큐에 추가해야 하지만 큐를 커밋해서는 안 됩니다.

설치 관리자가 디바이스 인터페이스를 등록하는 경우 디바이스의 커널 모드 구성 요소(예: 드라이버)는 IoSetDeviceInterfaceState 를 호출하여 인터페이스를 사용하도록 설정해야 합니다.

설치 관리자가 Win32 오류 코드를 반환하면 Windows에서 설치를 중지합니다.

DIF 코드에 대한 자세한 내용은 DIF 코드 처리를 참조하세요.

요구 사항

Version

Microsoft Windows 2000 이상 버전의 Windows에서 지원됩니다.

헤더

Setupapi.h(Setupapi.h 포함)

추가 정보

SetupDiInstallDeviceInterfaces

SP_DEVINFO_DATA

SP_DEVINSTALL_PARAMS