структура 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. Этот флаг доступен только для чтения для установщиков.
Дополнительные сведения см. в разделе Использование программы установкиAPI для проверки подписей 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)
Этот узел драйвера является производным от INF-файла, который был включен в эту версию Windows.
DNF_INET_DRIVER
Этот драйвер поступил из Интернета или из клиентский компонент Центра обновления Windows. Этот флаг доступен только для чтения для установщиков.
При вызове SetupCopyOEMInf необходимо указать флаг SPOST_URL, чтобы при копировании этого inf-файлав каталог %SystemRoot%\ Windows помечает его как inf-файл Интернета. Если этот шаг не указан, Windows попытается использовать это устройство для установки других устройств. В результате проблема заключается в том, что Windows больше не имеет исходных файлов и в конечном итоге запросит у пользователя недопустимый путь.
DNF_INF_IS_SIGNED (Windows XP и более поздние версии Windows)
Этот флаг доступен только для чтения для установщиков и устанавливается при выполнении любого из следующих условий:
- Драйвер имеет сигнатуру выпуска 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, чтобы указать, что пакету драйвера требуется дополнительное программное обеспечение, которое может быть установлено на компьютере или не устанавливаться.
После установки пакета драйверов для устройства диспетчер Plug and Play (PnP) выполняет следующие действия, если установщик устанавливает флаг DNF_REQUESTADDITIONALSOFTWARE:
- Диспетчер PnP создает отчет об ошибках о проблемах и решении (PRS) с типом RequestAddtionalSoftware. Этот отчет содержит сведения о конкретном идентификаторе оборудования устройства и системной архитектуре компьютера.
-
Если существует решение, предоставляемое независимым поставщиком оборудования (IHV) для программного обеспечения для конкретного устройства, оно загружается на компьютер.
Примечание Скачивание решения не устанавливает само программное обеспечение.
- Если программное обеспечение для конкретного устройства не установлено на компьютере, диспетчер PnP представляет решение пользователю и предоставляет ссылку для скачивания программного обеспечения. Затем пользователь может скачать и установить это программное обеспечение, следуя инструкциям, представленным в решении.
Требования
Требование | Значение |
---|---|
Заголовок | setupapi.h (включая Setupapi.h) |