Condividi tramite


struttura SP_DRVINSTALL_PARAMS (setupapi.h)

Una struttura SP_DRVINSTALL_PARAMS contiene i parametri di installazione del driver associati a un particolare elemento di informazioni sul driver.

Sintassi

typedef struct _SP_DRVINSTALL_PARAMS {
  DWORD     cbSize;
  DWORD     Rank;
  DWORD     Flags;
  DWORD_PTR PrivateData;
  DWORD     Reserved;
} SP_DRVINSTALL_PARAMS, *PSP_DRVINSTALL_PARAMS;

Members

cbSize

Dimensione, in byte, della struttura SP_DRVINSTALL_PARAMS.

Rank

Corrispondenza di classificazione di questo driver. È compreso tra 0 e n, dove 0 è il più compatibile.

Flags

Flag che controllano le funzioni che operano su questo driver. Può essere una combinazione dei seguenti elementi:

DNF_ALWAYSEXCLUDEFROMLIST (Windows Vista e versioni successive di Windows)

Se impostato, questo flag impedisce l'enumerazione del nodo driver , indipendentemente dal client che esegue l'enumerazione.

DNF_AUTHENTICODE_SIGNED (Windows Server 2003 e versioni successive di Windows)

Il file INF del driver è firmato da una firma Authenticode. Questo flag è di sola lettura per i programmi di installazione.

Per altre informazioni, vedere Uso di SetupAPI per verificare le firme Authenticode del driver.

DNF_BAD_DRIVER

Non usare questo driver. I programmi di installazione possono leggere e scrivere questo flag.

Se questo flag è impostato, SetupDiSelectBestCompatDrv e SetupDiSelectDevice ignorano questo driver.

Un programma di installazione di classe o un programma di installazione condivisa può impostare questo flag per impedire a Windows di elencare il driver nella finestra di dialogo Seleziona driver. Un programma di installazione potrebbe impostare questo flag quando gestisce una richiesta di DIF_SELECTDEVICE o DIF_SELECTBESTCOMPATDRV , ad esempio.

DNF_BASIC_DRIVER (Windows XP e versioni successive di Windows)

Questo driver è un driver di base. Questo flag è di sola lettura per i programmi di installazione.

DNF_CLASS_DRIVER

Questo driver è un driver di classe. Questo flag è di sola lettura per i programmi di installazione.

DNF_COMPATIBLE_DRIVER

Questo driver è un driver compatibile. Questo flag è di sola lettura per i programmi di installazione.

DNF_DUPDESC

Esistono altri provider che forniscono driver con la stessa descrizione di questo driver. Questo flag è di sola lettura per i programmi di installazione.

DNF_DUPDRIVERVER (Windows XP e versioni successive di Windows)

Esistono altri provider che forniscono driver con la stessa versione di questo driver. Questo flag è di sola lettura per i programmi di installazione.

DNF_DUPPROVIDER

Esistono altri provider che forniscono driver con la stessa descrizione di questo driver. L'unica differenza tra questo driver e la relativa corrispondenza è la data del driver. Questo flag è di sola lettura per i programmi di installazione.

Se questo flag è impostato, Windows visualizza la data del driver e la versione del driver accanto al driver in modo che l'utente possa distinguerlo dalla corrispondenza.

DNF_EXCLUDEFROMLIST

Non visualizzare questo driver in alcuna finestra di dialogo di selezione driver.

DNF_INBOX_DRIVER (Windows Vista e versioni successive di Windows)

Questo nodo driver è derivato da un file INF incluso in questa versione di Windows.

DNF_INET_DRIVER

Questo driver proviene da Internet o da Windows Update. Questo flag è di sola lettura per i programmi di installazione.

Se chiami SetupCopyOEMInf devi specificare il flag di SPOST_URL in modo che quando Windows copia questo INF nella directory %SystemRoot%\inf Windows lo contrassegnerà come Internet INF. Se si omette questo passaggio, Windows tenterà di usare questo dispositivo per installare altri dispositivi. Il problema risultante è che Windows non ha più i file di origine e finisce per richiedere all'utente un percorso non valido.

DNF_INF_IS_SIGNED (Windows XP e versioni successive di Windows)

Questo flag è di sola lettura per i programmi di installazione e viene impostato se sono soddisfatte le condizioni seguenti:

  • Il driver ha una firma di versione WHQL.
  • Il driver è un driver posta in arrivo.
  • Il driver ha una firma Authenticode.
Per altre informazioni, vedere Firma del driver.

DNF_INSTALLEDDRIVER (Windows Vista e versioni successive di Windows)

Questo nodo driver è attualmente installato per il dispositivo. Questo flag è di sola lettura per i programmi di installazione.

DNF_LEGACYINF

Questo driver proviene da un file INF legacy. Questo flag è valido solo per il sistema operativo basato su NT. Questo flag è di sola lettura per i programmi di installazione.

DNF_NODRIVER

Impostare se non deve essere installato alcun driver fisico per questo driver logico.

DNF_OEM_F6_INF (Windows XP e versioni successive di Windows)

Riservato.

DNF_OLD_INET_DRIVER

Questo driver proviene da Internet, ma Windows attualmente non ha accesso ai file di origine. Questo flag è di sola lettura per i programmi di installazione.

Il sistema non installerà un driver contrassegnato con questo flag perché Windows non dispone dei file di origine e finirà per richiedere all'utente un percorso non valido. L'INF per un driver di questo tipo può essere usato per tutto tranne per l'installazione dei dispositivi.

DNF_OLDDRIVER

Questo driver attualmente/precedentemente controllava il dispositivo associato. Questo flag è di sola lettura per i programmi di installazione.

DNF_REQUESTADDITIONALSOFTWARE (Windows 7 e versioni successive di Windows)

Impostare questo flag se il pacchetto driver fa solo parte della soluzione software necessaria per operare il dispositivo. In questo caso, il pacchetto driver richiede l'installazione di software aggiuntivo.

Per ulteriori informazioni, vedere la sezione Osservazioni successiva.

PrivateData

Un campo che un programma di installazione classi può usare per archiviare i dati privati. I co-programmi di installazione non devono usare questo campo.

Reserved

Riservato. Solo per uso interno.

Commenti

A partire da Windows 7, un programma di installazione o un programma di installazione condivisa può impostare il flag DNF_REQUESTADDITIONALSOFTWARE per indicare che il pacchetto driver richiede software aggiuntivo che potrebbe essere installato o meno nel computer.

Dopo aver installato il pacchetto driver per il dispositivo, il gestore Plug and Play (PnP) esegue i passaggi seguenti se il programma di installazione imposta il flag DNF_REQUESTADDITIONALSOFTWARE:

  1. Il gestore PnP genera una segnalazione degli errori di Segnalazione problemi e soluzione (PRS) con il tipo di RequestAddtionalSoftware. Questo report contiene informazioni sull'ID hardware specifico del dispositivo e sull'architettura di sistema del computer.
  2. Se esiste una soluzione fornita dal fornitore hardware indipendente (IHV) per il software specifico del dispositivo, la soluzione viene scaricata nel computer.
    Nota Il download della soluzione non installa il software stesso.
     
  3. Se il software specifico del dispositivo non è installato nel computer, il gestore PnP presenta la soluzione all'utente e fornisce un collegamento per scaricare il software. L'utente può quindi scegliere di scaricare e installare questo software seguendo le istruzioni presentate nella soluzione.
Nota Il programma di installazione non deve impostare il flag DNF_REQUESTADDITIONALSOFTWARE se il file INF per il pacchetto driver ha impostato il flag RequestAdditionalSoftware nella sezione INF ControlFlags.

Requisiti

Requisito Valore
Intestazione setupapi.h (include Setupapi.h)

Vedi anche

SetupDiGetDriverInstallParams

SetupDiSetDriverInstallParams