DIF_FINISHINSTALL_ACTION
DIF_FINISHINSTALL_ACTION 요청을 사용하면 다른 모든 디바이스 설치 작업이 완료된 후 설치 관리자가 대화형 관리자 컨텍스트에서 마침 설치 작업을 실행할 수 있습니다.
보낸 경우
Windows 8 이상 버전에서는 완료 설치 작업이 디바이스 설치의 일부로 자동으로 실행되지 않습니다. 디바이스 설치 완료 작업을 완료하려면 사용자가 알림 센터에서 "디바이스 소프트웨어 설치 완료"를 클릭하여 설치를 완료해야 합니다.
자세한 내용은 Finish-Install 작업 실행을 참조하세요.
Windows 7에서 완료 설치 프로세스는 다음 시간 중 하나에서 관리자 자격 증명을 가진 사용자의 컨텍스트에서만 실행됩니다.
- 다음에 관리자 자격 증명이 있는 사용자가 디바이스가 연결된 동안 로그온합니다.
- 디바이스가 다시 연결되면.
- 사용자가 장치 관리자 하드웨어 변경 내용 검사를 선택하면
사용자가 관리자 권한 없이 로그인한 경우 Windows는 관리자 컨텍스트에서 완료 설치 작업을 실행하기 위한 동의 및 자격 증명을 사용자에게 요청합니다.
처리할 사람
클래스 공동 설치 관리자 |
처리 가능 |
디바이스 공동 설치 관리자 |
처리 가능 |
클래스 설치 관리자 |
처리 가능 |
설치 관리자 입력
DeviceInfoSet
설치 중인 디바이스가 포함된 디바이스 정보 집합 에 대한 핸들입니다.
DeviceInfoData
설치되는 디바이스를 나타내는 SP_DEVINFO_DATA 구조체에 대한 포인터입니다.
디바이스 설치 매개 변수
DeviceInfoData와 연결된 디바이스 설치 매개 변수(SP_DEVINSTALL_PARAMS 구조)가 있습니다.
설치 관리자 출력
디바이스 설치 매개 변수
설치 관리자는 시스템 다시 시작이 마침 설치 작업을 완료해야 하는 경우 DI_NEEDREBOOT 플래그를 설정합니다.
설치 관리자 반환 값
설치 관리자는 다음 표에 나열된 값 중 하나를 반환합니다.
반환 값 | 의미 |
---|---|
ERROR_DI_DO_DEFAULT |
클래스 설치 관리자: 설치 관리자에 마침 설치 작업이 없거나, 완료 설치 작업을 성공적으로 완료했거나, 완료 설치 작업을 완료할 수 없다고 결정했습니다. 디바이스 설치는 요청에 대한 기본 처리를 수행해야 합니다. 공동 설치 관리자: 공동 설치 관리자는 이 오류 코드를 반환하면 안됩니다. |
NO_ERROR |
클래스 설치 관리자: 클래스 설치 관리자가 이 오류 코드를 반환하면 안 됩니다. 클래스 설치 관리자가 이 오류 코드를 반환하는 경우 디바이스 설치는 요청에 대한 기본 처리를 수행하지 않습니다. 공동 설치 관리자: 설치 관리자에 마침 설치 작업이 없거나, 완료 설치 작업을 성공적으로 완료했거나, 완료 설치 작업을 성공적으로 완료할 수 없다고 결정했습니다. |
Win32 오류 코드 |
클래스 설치 관리자 또는 공동 설치 관리자: 설치 관리자가 완료 설치 작업을 처리하는 동안 오류가 발생했으며 디바이스 설치는 다음에 디바이스가 관리자의 컨텍스트에서 열거될 때 완료 설치 작업을 완료하려고 시도해야 합니다. |
기본 DIF 코드 처리기
Windows 7은 SetupDiFinishInstallAction을 사용합니다.
Windows 8 이상 버전에는 기본 DIF 코드 처리기가 없으며 SetupDiFinishInstallAction이 제거되었습니다.
의견
디바이스 설치는 ERROR_DI_DO_DEFAULT 반환 코드 또는 완료 설치 작업이 실제로 성공했는지 여부를 NO_ERROR 반환 코드에서 확인할 수 없으므로 설치 관리자는 사용자에게 완료 설치 관리자 작업의 상태 알려야 합니다.
설치 완료 작업에 대한 자세한 내용은 디바이스 설치 프로세스 Finish-Install 작업 및 Finish-Install 작업 구현을 참조하세요.
DIF 코드에 대한 일반적인 내용은 DIF 코드 처리 및 기본 DIF 코드 처리기 호출을 참조하세요.
요구 사항
Version |
Windows Vista에서 Windows 7을 통해 지원됩니다. |
헤더 |
Setupapi.h(Setupapi.h 포함) |