디바이스 및 드라이버 패키지를 제거하는 방법
이 페이지에서는 소프트웨어가 디바이스를 제거하고 드라이버 저장소에서 드라이버 패키지를 제거하는 방법을 설명합니다.
디바이스 제거
물리적 디바이스를 나타내는 디바이스 노드(devnode)를 제거하려면 다음 중 하나를 사용합니다.
지정된 디바이스만 제거하려면 DIF_REMOVE 요청으로 SetupAPI 함수 SetupDiCallClassInstaller를 호출하는 디바이스 설치 애플리케이션을 사용합니다.
디바이스 트리에서 지정된 디바이스 및 디바이스 아래의 모든 디바이스를 제거하려면 DiUninstallDevice 함수를 호출하는 디바이스 설치 애플리케이션을 사용합니다.
이러한 방법 중 하나를 사용하여 디바이스를 제거하면 플러그 앤 플레이(PnP) 관리자가 드라이버 이진 파일과 디바이스 간의 연결을 제거합니다.
디바이스는 커널 PnP 트리에 남아 있고 드라이버 패키지는 드라이버 저장소에 남아 있습니다. PnP 관리자가 디바이스를 다시 열거하는 경우(예: 디바이스가 분리된 후 다시 연결된 경우) PnP 관리자는 디바이스를 새 디바이스 인스턴스로 처리하고 드라이버 저장소에서 드라이버 패키지를 설치합니다.
최종 사용자가 디바이스를 제거하는 방법에 대한 자세한 내용은 장치 관리자 사용하여 디바이스 및 드라이버 패키지 제거를 참조하세요.
드라이버 저장소에서 드라이버 패키지 삭제
드라이버 저장소에서 드라이버 패키지를 삭제하려면 다음을 수행해야 합니다.
- 드라이버 패키지와 함께 디바이스가 설치되어 있지 않은지 확인합니다.
- 드라이버 저장소에서 드라이버 패키지를 제거합니다.
하나의 작업으로 이 두 단계를 모두 수행하려면 다음 중 하나를 수행할 수 있습니다.
- Windows 10 버전 1607부터 명령 프롬프트에서 다음을 사용합니다
pnputil /delete-driver <example.inf> /uninstall
. PnPUtil 명령에 대한 자세한 내용은 PnPUtil 명령 구문을 참조 하세요. - Windows 10 버전 1703부터 디바이스 설치 애플리케이션에서 DiUninstallDriverW를 호출할 수 있습니다.
Windows 10 버전 1511 이하:
- 드라이버 패키지와 함께 현재 설치된 모든 디바이스를 식별하고 드라이버 패키지에 의존하지 않도록 업데이트합니다. 다음 중 하나를 수행할 수 있습니다.
- 디바이스에 다른 드라이버 패키지를 설치합니다.
- 플래그와 함께 DiInstallDevice를
DIIDFLAG_INSTALLNULLDRIVER
사용하여 디바이스에 null 드라이버를 설치합니다. - 디바이스를 제거합니다.
- 그런 다음 디바이스 설치 애플리케이션은 SetupUninstallOEMInf를 호출하여 드라이버 패키지를 제거합니다.
드라이버 저장소에서 드라이버 패키지를 삭제하면 PnP 관리자의 내부 데이터베이스에서 연결된 메타데이터가 제거되고 시스템 INF 디렉터리에서 관련 INF 파일이 삭제됩니다.
드라이버 패키지가 제거된 후에는 더 이상 디바이스에 설치할 수 없습니다. 다시 설치하려면 Windows 업데이트 같은 원래 원본에서 드라이버 패키지를 다시 다운로드합니다.