SP_DRVINSTALL_PARAMS 구조체(setupapi.h)
SP_DRVINSTALL_PARAMS 구조에는 특정 드라이버 정보 요소와 연결된 드라이버 설치 매개 변수가 포함됩니다.
구문
typedef struct _SP_DRVINSTALL_PARAMS {
DWORD cbSize;
DWORD Rank;
DWORD Flags;
DWORD_PTR PrivateData;
DWORD Reserved;
} SP_DRVINSTALL_PARAMS, *PSP_DRVINSTALL_PARAMS;
멤버
cbSize
SP_DRVINSTALL_PARAMS 구조체의 크기(바이트)입니다.
Rank
이 드라이버의 순위 일치입니다. 0에서 n까지의 범위이며, 여기서 0은 가장 호환됩니다.
Flags
이 드라이버에서 작동하는 함수를 제어하는 플래그입니다. 다음의 조합일 수 있습니다.
DNF_ALWAYSEXCLUDEFROMLIST(Windows Vista 이상 버전의 Windows)
이 플래그를 설정하면 열거형을 수행하는 클라이언트에 관계없이 드라이버 노드 가 열거되지 않습니다.
DNF_AUTHENTICODE_SIGNED(Windows Server 2003 이상 버전의 Windows)
이 드라이버의 INF 파일은 Authenticode 서명으로 서명됩니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
자세한 내용은 SetupAPI를 사용하여 드라이버 Authenticode 서명 확인을 참조하세요.
DNF_BAD_DRIVER
이 드라이버를 사용하지 마세요. 설치 관리자는 이 플래그를 읽고 쓸 수 있습니다.
이 플래그가 설정되면 SetupDiSelectBestCompatDrv 및 SetupDiSelectDevice 는 이 드라이버를 무시합니다.
클래스 설치 관리자 또는 공동 설치 관리자는 Windows가 드라이버 선택 대화 상자에 드라이버를 나열하지 못하도록 이 플래그를 설정할 수 있습니다. 예를 들어 설치 관리자가 DIF_SELECTDEVICE 또는 DIF_SELECTBESTCOMPATDRV 요청을 처리할 때 이 플래그를 설정할 수 있습니다.
DNF_BASIC_DRIVER(Windows XP 이상 버전의 Windows)
이 드라이버는 기본 드라이버입니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
DNF_CLASS_DRIVER
이 드라이버는 클래스 드라이버입니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
DNF_COMPATIBLE_DRIVER
이 드라이버는 호환되는 드라이버입니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
DNF_DUPDESC
이 드라이버와 동일한 설명을 가진 드라이버를 제공하는 다른 공급자가 있습니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
DNF_DUPDRIVERVER(Windows XP 이상 버전의 Windows)
이 드라이버와 동일한 버전을 가진 드라이버를 제공하는 다른 공급자가 있습니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
DNF_DUPPROVIDER
이 드라이버와 동일한 설명을 가진 드라이버를 제공하는 다른 공급자가 있습니다. 이 드라이버와 해당 드라이버의 일치 항목 간의 유일한 차이점은 드라이버 날짜입니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
이 플래그가 설정되면 Windows에서 드라이버 날짜 및 드라이버 버전을 드라이버 옆에 표시하여 사용자가 일치 항목과 구분할 수 있도록 합니다.
DNF_EXCLUDEFROMLIST
드라이버 선택 대화 상자에 이 드라이버를 표시하지 마세요.
DNF_INBOX_DRIVER(Windows Vista 이상 버전의 Windows)
이 드라이버 노드 는 이 버전의 Windows에 포함된 INF 파일에서 파생됩니다.
DNF_INET_DRIVER
이 드라이버는 인터넷에서 온 또는 Windows 업데이트. 이 플래그는 설치 관리자에게 읽기 전용입니다.
SetupCopyOEMInf를 호출하는 경우 Windows에서 이 INF를 %SystemRoot%\inf 디렉터리에 복사할 때 Windows에서 인터넷 INF로 표시하도록 SPOST_URL 플래그를 지정해야 합니다. 이 단계를 생략하면 Windows에서 이 디바이스를 사용하여 다른 디바이스를 설치하려고 시도합니다. 그 결과 Windows에는 더 이상 원본 파일이 없으며 사용자에게 잘못된 경로를 묻는 메시지가 표시됩니다.
DNF_INF_IS_SIGNED(Windows XP 이상 버전의 Windows)
이 플래그는 설치 관리자에게 읽기 전용이며 다음 조건 중 어느 것이라도 true이면 설정됩니다.
- 드라이버에 WHQL 릴리스 서명이 있습니다.
- 드라이버는 받은 편지함 드라이버입니다.
- 드라이버에 Authenticode 서명이 있습니다.
DNF_INSTALLEDDRIVER(Windows Vista 이상 버전의 Windows)
이 드라이버 노드 는 현재 디바이스에 대해 설치되어 있습니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
DNF_LEGACYINF
이 드라이버는 레거시 INF 파일에서 제공됩니다. 이 플래그는 NT 기반 운영 체제에만 유효합니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
DNF_NODRIVER
이 논리 드라이버에 대해 물리적 드라이버를 설치하지 않을 경우 를 설정합니다.
DNF_OEM_F6_INF(Windows XP 이상 버전의 Windows)
예약되어 있습니다.
DNF_OLD_INET_DRIVER
이 드라이버는 인터넷에서 왔지만 Windows는 현재 원본 파일에 액세스할 수 없습니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
Windows에는 원본 파일이 없으며 사용자에게 잘못된 경로를 묻는 메시지가 표시되므로 시스템에서 이 플래그로 표시된 드라이버를 설치하지 않습니다. 이러한 드라이버에 대한 INF는 디바이스 설치를 제외한 모든 항목에 사용할 수 있습니다.
DNF_OLDDRIVER
이 드라이버는 현재/이전에 연결된 디바이스를 제어했습니다. 이 플래그는 설치 관리자에게 읽기 전용입니다.
DNF_REQUESTADDITIONALSOFTWARE(Windows 7 이상 버전의 Windows)
드라이버 패키지가 디바이스를 작동하는 데 필요한 소프트웨어 솔루션의 일부일 경우 이 플래그를 설정합니다. 이 경우 드라이버 패키지에는 추가 소프트웨어를 설치해야 합니다.
자세한 내용은 아래 설명 부분을 참조하십시오.
PrivateData
클래스 설치 관리자가 개인 데이터를 저장하는 데 사용할 수 있는 필드입니다. 공동 설치 관리자는 이 필드를 사용하면 안 됩니다.
Reserved
예약되어 있습니다. 내부 전용입니다.
설명
Windows 7부터 설치 관리자 또는 공동 설치 관리자는 DNF_REQUESTADDITIONALSOFTWARE 플래그를 설정하여 드라이버 패키지 에 컴퓨터에 설치되거나 설치되지 않은 추가 소프트웨어가 필요함을 나타낼 수 있습니다.
디바이스에 대한 드라이버 패키지를 설치한 후 설치 관리자가 DNF_REQUESTADDITIONALSOFTWARE 플래그를 설정하는 경우 플러그 앤 플레이(PnP) 관리자는 다음 단계를 수행합니다.
- PnP 관리자는 RequestAddtionalSoftware 형식의 PRS(문제 보고서 및 솔루션) 오류 보고서를 생성합니다. 이 보고서에는 디바이스의 특정 하드웨어 ID 및 컴퓨터의 시스템 아키텍처에 대한 정보가 포함되어 있습니다.
-
디바이스별 소프트웨어에 대한 IHV(독립 하드웨어 공급업체)에서 제공하는 솔루션이 있는 경우 솔루션이 컴퓨터에 다운로드됩니다.
참고 솔루션의 다운로드는 소프트웨어 자체를 설치하지 않습니다.
- 디바이스별 소프트웨어가 컴퓨터에 설치되지 않은 경우 PnP 관리자는 사용자에게 솔루션을 제공하고 소프트웨어를 다운로드할 수 있는 링크를 제공합니다. 그러면 사용자는 솔루션에 제공된 지침에 따라 이 소프트웨어를 다운로드하고 설치하도록 선택할 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | setupapi.h(Setupapi.h 포함) |