DIF_ALLOW_INSTALL
Una richiesta di DIF_ALLOW_INSTALL chiede ai programmi di installazione di un dispositivo se Windows può procedere con l'installazione del dispositivo.
Data di invio
Dopo aver selezionato un driver per il dispositivo, ma prima di installare il dispositivo.
Chi gestisce
Co-programma di installazione classi |
Può gestire |
Programma di installazione condivisa del dispositivo |
Non deve gestire |
Programma di installazione classi |
Può gestire |
Input del programma di installazione
DeviceInfoSet
Fornisce un handle al set di informazioni sul dispositivo che contiene il dispositivo.
DeviceInfoData
Fornisce un puntatore a una struttura SP_DEVINFO_DATA che identifica il dispositivo nel set di informazioni sul dispositivo.
Parametri di installazione del dispositivo
Esistono parametri di installazione del dispositivo (SP_DEVINSTALL_PARAMS) associati a DeviceInfoData.
Parametri di installazione della classe
Nessuno
Output del programma di installazione
Valore restituito del programma di installazione
Un co-programma di installazione può restituire NO_ERROR o un errore Win32. Un co-programma di installazione non deve restituire ERROR_DI_POSTPROCESSING_REQUIRED per questa richiesta DIF.
Un programma di installazione classi restituisce in genere ERROR_DI_DO_DEFAULT o un codice di errore Win32.
I codici di errore Win32 tipici per questa richiesta DIF includono ERROR_DI_DONT_INSTALL e ERROR_NON_WINDOWS_NT_DRIVER.
Nota I programmi di installazione di classe e i coinstallazioni non devono freturn ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION perché l'installazione del dispositivo non riesce. Se l'installazione del dispositivo richiede l'interazione dell'utente, i programmi di installazione di classe e i coinstallazioni devono supportare un'azione di completamento dell'installazione.
Gestore di codice DIF predefinito
Nessuno
Operazione del programma di installazione
In risposta a una richiesta di DIF_ALLOW_INSTALL un programma di installazione conferma se Windows può installare il dispositivo.
Un programma di installazione può non riuscire se determina che il driver selezionato non è corretto (ad esempio, se il driver è un driver solo Windows 9x che non funzionerà correttamente nei sistemi operativi basati su NT) o se determina che un driver selezionato è noto per avere bug.
Un programma di installazione potrebbe non riuscire se il flag DI_QUIETINSTALL è impostato nei parametri di installazione del dispositivo e il programma di installazione deve visualizzare l'interfaccia utente durante l'installazione del dispositivo. Tuttavia, questo errore è raro perché un programma di installazione può in genere fornire qualsiasi pagina dell'interfaccia utente in risposta alla richiesta di DIF_NEWDEVICEWIZARD_FINISHINSTALL. In questo caso, l'interfaccia utente non impedisce al programma di installazione di eseguire correttamente una richiesta di DIF_ALLOW_INSTALL per cui è impostato il flag non interattiva. Tuttavia, se un programma di installazione non può limitare l'interfaccia utente al caso di installazione finale, il programma di installazione deve interrompere questa richiesta DIF se è impostato il flag di DI_QUIETINSTALL. Un programma di installazione potrebbe avere questa restrizione, ad esempio, se chiama codice fornito dal fornitore che visualizza l'interfaccia utente.
Se un programma di installazione non riesce questa richiesta DIF, Windows arresta l'installazione.
Se un programma di installazione non riesce questa richiesta DIF e DI_QUIETINSTALL non è impostato nei parametri di installazione del dispositivo, il programma di installazione deve visualizzare una finestra di dialogo con un messaggio che spiega perché il dispositivo non viene installato.
Per altre informazioni sui codici DIF, vedere Gestione dei codici DIF.
Requisiti
Versione |
Supportato in Microsoft Windows 2000 e versioni successive di Windows. |
Intestazione |
Setupapi.h (include Setupapi.h) |