DIF_TROUBLESHOOTER

DIF_TROUBLESHOOTER 요청을 사용하면 설치 관리자가 디바이스에 대한 문제 해결사를 시작하거나 Windows에서 시작할 CHM 및 HTM 문제 해결사 파일을 반환할 수 있습니다.

참고 이 DIF 코드는 Windows Server 2003, Windows XP 및 Microsoft Windows 2000에서만 지원됩니다.

보낸 경우

사용자가 장치 관리자 디바이스에 대한 "문제 해결사" 단추를 클릭하면

처리할 사람

클래스 공동 설치 관리자

처리 가능

디바이스 공동 설치 관리자

처리 가능

클래스 설치 관리자

처리 가능

설치 관리자 입력

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

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

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

클래스 설치 매개 변수
SP_TROUBLESHOOTER_PARAMS 구조체는 DeviceInfoData와 연결됩니다.

설치 관리자 출력

클래스 설치 매개 변수
설치 관리자는 CHM 또는 HTML 파일을 설정하여 SP_TROUBLESHOOTER_PARAMS 수정할 수 있습니다.

설치 관리자 반환 값

공동 설치 관리자가 이 요청을 처리하지 않으면 전처리 패스에서 NO_ERROR 반환합니다.

공동 설치 관리자가 이 요청을 처리하는 경우 후처리 단계에서 처리합니다. 공동 설치 관리자가 CHM 및 HTML 파일을 제공하는 경우 받은 상태 전파합니다(아마도 ERROR_DI_DO_DEFAULT). 공동 설치 관리자가 문제 해결사를 실행하고 문제를 해결하면 공동 설치 관리자는 NO_ERROR 반환합니다. 공동 설치 관리자가 문제 해결사를 실행하지만 문제를 해결하지 않으면 받은 상태 전파합니다(ERROR_DI_DO_DEFAULT).

클래스 설치 관리자가 CHM 파일과 HTML 파일을 제공하거나 클래스 설치 관리자가 문제 해결사를 실행하지만 문제를 해결하지 않는 경우 클래스 설치 관리자는 ERROR_DI_DO_DEFAULT 반환합니다. 이후 Windows는 기본 처리기를 호출합니다.

클래스 설치 관리자가 자체 문제 해결사를 시작하고 문제를 해결하면 클래스 설치 관리자는 NO_ERROR 반환합니다. Windows는 이후에 기본 처리기를 호출하지 않습니다.

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

기본 DIF 코드 처리기

없음

DIF_TROUBLESHOOTER 대한 기본 처리기는 없지만 운영 체제는 설치 관리자 제공 문제 해결사 없이 디바이스 문제를 resolve 시도하는 기본 문제 해결사를 제공합니다.

설치 관리자 작업

설치 관리자는 CM_Get_DevNode_Status 호출하여 디바이스 상태 및 CM 문제 코드를 가져옵니다. 문제에 따라 설치 관리자가 문제 해결사, 도움말 파일 또는 아무것도 제공하지 않을 수 있습니다. 문제 해결사에서 디바이스에 문제를 resolve 수 있습니다. 문제 해결사에서 문제를 해결하는 경우 SetupDiCallClassInstaller 를 호출하여 DICS_PROPCHANGE 형식의 DIF_PROPERTYCHANGE 요청을 보내야 합니다. 설치 관리자가 디바이스에 대한 문제 해결사를 제공하지 않는 경우 사용자에게 문제 해결 제안의 도움말 파일을 제공할 수 있습니다.

자체 문제 해결사를 실행하는 설치 관리자가 없는 경우 Windows는 HTML 도움말을 실행하여 사용자에게 정보를 표시합니다. 설치 관리자가 클래스 설치 매개 변수에 CHM 파일을 제공한 경우 Windows에서 해당 파일을 표시합니다. 그렇지 않으면 Windows에서 시스템 제공 문제 해결 정보를 표시합니다.

클래스 설치 매개 변수에는 최대 하나의 ChmFileHtmlTroubleShooter 쌍이 포함됩니다. 둘 이상의 설치 관리자가 이러한 값을 지정하는 경우 Windows는 DIF 요청을 처리한 마지막 설치 관리자가 설정한 값을 사용합니다.

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

요구 사항

Version

Windows Server 2003, Windows XP 및 Microsoft Windows 2000에서 지원됩니다.

헤더

Setupapi.h(Setupapi.h 포함)

추가 정보

CM_Get_DevNode_Status

SP_DEVINFO_DATA

SP_DEVINSTALL_PARAMS

SP_TROUBLESHOOTER_PARAMS