다음을 통해 공유


드라이버 파일 업데이트

드라이버는 다음 중 하나가 발생할 때마다 업데이트됩니다.

  • 하드웨어 업데이트 마법사장치 관리자 실행됩니다.

    참고 Windows Vista부터 이 마법사의 이름은 드라이버 소프트웨어 업데이트 마법사로 지정됩니다.

  • Windows 업데이트 실행됩니다.

  • 디바이스에 대한 설치 소프트웨어가 실행됩니다.

  • Windows Vista부터 관리자 권한 명령 프롬프트에서 PnPUtil 도구를 실행하여 디바이스에 대한 드라이버 패키지를 설치하거나 업데이트할 수 있습니다.

기존 드라이버를 업데이트하는 설치 소프트웨어 및 INF 파일을 작성할 때 다음 지침을 사용합니다.

  • 설치 소프트웨어는 UpdateDriverForPlugAndPlayDevices를 호출하여 INF 파일 및 하드웨어 ID를 제공하여 하드웨어 ID와 일치하는 디바이스에 대한 드라이버를 업데이트할 수 있습니다.

    Windows Vista부터 설치 소프트웨어는 다음 중 하나를 호출하여 드라이버를 업데이트할 수도 있습니다.

    • DiInstallDriver- 드라이버를 미리 설치한 다음 드라이버가 지원하는 시스템에 있는 디바이스에 드라이버를 설치합니다.
    • DiInstallDevice - 시스템에 있는 지정된 디바이스의 드라이버 저장소에서 지정된 드라이버를 설치합니다.

    자세한 내용은 디바이스 설치 애플리케이션 작성을 참조하세요.

  • 드라이버를 업그레이드할 때 클래스 설치 관리자 및 공동 설치 관리자는 반드시 필요한 경우가 아니면 DIF_NEWDEVICEWIZARD_FINISHINSTALL 대한 응답으로 완료 설치 페이지를 제공하지 않아야 합니다. 가능하면 이전 설치의 설정에서 완료 설치 정보를 가져옵니다.

  • 가능한 한, 클래스 설치 관리자 및 공동 설치 관리자는 초기 설치를 제공하는지 또는 이미 설치된 디바이스에 대한 드라이버를 업데이트하는지에 대한 기본 동작을 피해야 합니다.

  • Windows XP부터 레지스트리 값 CoInstallers32EnumPropPages32DIF_REGISTER_COINSTALLERS 전달되기 전에 삭제됩니다. 이전 운영 체제 버전의 INF 파일은 이러한 값을 명시적으로 삭제하거나 추가하지 않는 수정 작업을 수행해야 합니다.

  • Windows XP부터 레지스트리 값 UpperFiltersLowerFiltersDIF_INSTALLDEVICE 전달되기 전에 삭제됩니다. 이전 운영 체제 버전의 INF 파일은 이러한 값을 명시적으로 삭제하거나 추가하지 않는 수정 작업을 수행해야 합니다.

  • 드라이버를 업데이트할 때는 INF DelFiles 지시문 또는 INF RenFiles 지시문을 사용하지 마세요. Windows는 특정 파일이 다른 디바이스에서 사용되지 않도록 보장할 수 없습니다. (클래스 설치 관리자 및 공동 설치 관리자는 파일을 사용하는 디바이스가 없음을 안정적으로 확인할 수 있는 경우 파일을 삭제하거나 이름을 바꿀 수 있습니다.)

  • 항목이 더 이상 필요하지 않은 경우 INF DelReg 지시문을 사용하여 이전 디바이스 설치에서 이전 디바이스별 레지스트리 항목을 제거합니다. (전역 레지스트리 항목을 제거하지 마세요.)

  • INF DDInstall.Services 섹션에서 INFDelService 지시문을 사용하여 이전에 설치된 디바이스/드라이버 서비스를 대상 컴퓨터에서 제거하지 마세요. Windows는 특정 서비스가 다른 디바이스에서 사용되지 않도록 보장할 수 없습니다. (클래스 설치 관리자 및 공동 설치 관리자는 서비스를 사용하는 디바이스가 없음을 안정적으로 확인할 수 있는 경우 서비스를 삭제할 수 있습니다.)

  • 클래스 설치 관리자, 클래스 공동 설치 관리자 또는 서비스 DLL을 업데이트할 때 새 버전에 새 파일 이름을 지정해야 합니다.

INF 파일에 대한 자세한 내용은 INF 파일 만들기INF 파일 섹션 및 지시문을 참조하세요.