Condividi tramite


Come testare un pacchetto driver (distribuzione manuale)

Questo articolo illustra come usare il file INF di installazione del driver per installare manualmente un pacchetto driver in un computer di test e verificare l'installazione e l'operazione.

Prerequisiti

  • Pacchetto driver pronto per l'installazione. È prima necessario creare e compilare il driver e quindi creare un pacchetto driver per l'installazione. Per altre informazioni, vedere Building a Driver e Creating a Driver Package.
  • Un PC di destinazione, configurato per accettare il driver firmato per il test.
  • Facoltativamente, un debugger installato per esaminare il driver appena installato.

Informazioni generali

Il computer in cui si installa il driver viene chiamato computer di destinazione o computer di test. In genere, questo computer è separato dal computer in cui si sviluppa e si compila il pacchetto driver. Il computer in cui si sviluppa e si compila il driver viene chiamato computer host.

Il processo di spostamento del pacchetto driver nel computer di destinazione e l'installazione del driver viene chiamato distribuzione del driver.

Individuare l'output di compilazione per il driver

  1. In Esplora file passare alla cartella contenente i file estratti per l'esempio. Ad esempio, per il driver di esempio echo, vai a C:\DriverSamples\general\echo\kmdf. All'interno di tale cartella, il percorso dei file del driver compilati varia a seconda delle impostazioni di configurazione e piattaforma selezionate in Configuration Manager. Se le impostazioni predefinite sono rimaste invariate, i file del driver compilati vengono salvati in una cartella denominata \x64\Debug per una build di debug a 64 bit.

    La cartella deve contenere questi file:

    Documento Descrizione
    Echo.sys File binario del sistema driver.
    Echo.inf File di informazioni (INF) che contiene le informazioni necessarie per installare il driver.
    Echo.cer File di certificato .cer che è stato generato quando il driver è stato firmato per il test.
    Echo.pdb Simboli di debug facoltativi per il driver da usare con il debugger di Windows.
  2. Individuare un'unità USB o configurare una condivisione di rete per copiare dall'host al sistema di test di destinazione i file del driver generati.

  3. Copiare i file nel sistema di destinazione per installare e testare il driver.

Installare l'esempio di driver nel sistema di destinazione

Per installare il driver nel sistema di destinazione, seguire questa procedura.

Importante

Prima di modificare le impostazioni di avvio, potrebbe essere necessario sospendere temporaneamente le funzionalità di sicurezza di Windows, ad esempio BitLocker e Avvio protetto nel PC di test. Riabilitare queste funzionalità di sicurezza al termine dei test e gestire in modo appropriato il PC di test quando le funzionalità di sicurezza sono disabilitate.

Disattivare la verifica della firma del driver sul sistema di destinazione

Prima di distribuire un driver firmato per il test, preparare il computer di destinazione abilitando la firma dei test.

Nel sistema di destinazione, abilitare i driver con firma di test:

  1. Aprire Impostazioni di Windows.

  2. In Sistema selezionare Ripristino.

  3. In Avvio avanzato selezionare Riavvia ora.

  4. Al riavvio del computer, selezionare Opzioni di avvio. In Windows 10 selezionare Risoluzione dei problemi Opzioni>avanzate>Impostazioni di avvio, quindi selezionare Riavvia.

  5. Nella schermata Impostazioni di avvio selezionare Disabilita l'imposizione della firma del driver premendo F7.

  6. Riavviare il computer di destinazione.

Installare il certificato di test

Nel computer di destinazione selezionare e tenere premuto o fare clic con il pulsante destro del mouse sul file del certificato e selezionare Installa, quindi seguire le istruzioni per installare il certificato di test.

Se sono necessarie istruzioni più dettagliate per la configurazione del computer di destinazione, vedere Preparazione di un computer per la distribuzione manuale dei driver.

Opzione di installazione n. 1 - Fare clic con il pulsante destro del mouse sul file INF

Le istruzioni seguenti illustrano come installare e testare il driver di esempio.

Nel computer di destinazione, aprire una finestra del prompt dei comandi in qualità di amministratore. Passare alla cartella del pacchetto driver, fare clic con il pulsante destro del mouse sul file INF, ad esempio il file echo.inf e quindi scegliere Installa.

Viene visualizzata una finestra di dialogo che indica che il driver di test è un driver non firmato. Selezionare Installa questo driver comunque per continuare.

Screenshot dell'avviso di sicurezza di Windows che informa che Windows non è in grado di verificare l'autore del software driver.

Opzione di installazione n. 2 - Strumento Devcon

Possono verificarsi situazioni in cui l'uso di uno strumento da riga di comando, ad esempio PnPUtil o Devcon , può essere utile per un flusso di lavoro di sviluppo dei driver. Questa sezione descrive come usare lo strumento DevCon per installare il driver.

Nel sistema host passare alla cartella Strumenti nell'installazione di WDK e individuare lo strumento DevCon. Ad esempio, cercare nella cartella seguente: C:\Programmi (x86)\Windows Kits\10\Tools\x64\devcon.exe.

Creare una cartella nella destinazione per il pacchetto driver compilato, ad esempio C:\EchoDriver. Copiare devcon.exe nel sistema di destinazione.

Le istruzioni seguenti illustrano come installare e testare il driver di esempio usando devcon. Ecco la sintassi generale per lo strumento devcon che si usa per installare il driver:

devcon install <INF file> <hardware ID>

In questo esempio viene installato il driver echo. Il file INF necessario per l'installazione di questo driver è echo.inf. Il file inf contiene l'ID hardware per l'installazione del echo.sys. Per l'esempio echo, l'ID hardware è root\ECHO.

Nel computer di destinazione, aprire una finestra del prompt dei comandi in qualità di amministratore. Passare alla cartella del pacchetto driver e immettere il comando seguente:

devcon install echo.inf root\ECHO

Se ricevi un messaggio di errore che dice che devcon non viene riconosciuto, prova ad aggiungere il percorso dello strumento devcon. Ad esempio, se è stato copiato in una cartella denominata C:\Tools, provare a usare il comando seguente:

c:\tools\devcon install echo.inf root\ECHO

Viene visualizzata una finestra di dialogo che indica che il driver di test è un driver non firmato. Selezionare Installare questo driver comunque per continuare.

Screenshot dell'avviso di sicurezza di Windows che informa che Windows non è in grado di verificare l'autore del software driver.

Suggerimento

Se si verificano problemi con l'installazione, controllare il file seguente per altre informazioni. %windir%\inf\setupapi.dev.log

Controllo del driver installato

Gestione dispositivi

Usare Gestione dispositivi per verificare che il driver sia stato installato correttamente e che sia stato caricato ed eseguito.

  1. Nel computer di destinazione, in una finestra del prompt dei comandi, immettere il comando devmgmt per aprire Gestione dispositivi.

  2. In Gestione dispositivi scegliere Dispositivi per tipo dal menu Visualizza.

  3. Nell'albero dei dispositivi, individua il tuo driver, ad esempio il Sample WDF Echo Driver, nel nodo Sample Device.

Schermata dell'albero di Gestione dispositivi che evidenzia il driver di esempio WDF echo.

PnPUtil

Usare PnPUtil per raccogliere informazioni aggiuntive sul driver installato.

  1. Aprire una finestra del prompt dei comandi (Esegui come amministratore).

  2. Digitare pnputil /? per visualizzare le opzioni di comando. Per altre informazioni, vedere Sintassi dei comandi PnPUtil .

  3. Usa il pnputil /enum-drivers /files per visualizzare tutti i file dei driver OEM.

  4. Usare pnputil /enum-devices /problem /deviceids per visualizzare gli ID dispositivo per tutti i dispositivi con problemi. In questo esempio di output il driver per la scheda OSR FX2 ha un codice di problema attivo di CM_PROB_UNSIGNED_DRIVER.

PS C:\WINDOWS\system32> pnputil /enum-devices /problem /deviceids
Microsoft PnP Utility

Instance ID:                USB\VID_0547&PID_1002\5&353525f&0&3
Device Description:         WDF Sample Driver (DMF Sample 1) for OSR USB-FX2 Learning Kit
Class Name:                 Sample
Class GUID:                 {78a1c341-4539-11d3-b88d-00c04fad5171}
Manufacturer Name:          OSR
Status:                     Problem
Problem Code:               52 (0x34) [CM_PROB_UNSIGNED_DRIVER]
Problem Status:             0xC0000428
Driver Name:                oem40.inf
Hardware IDs:               USB\VID_0547&PID_1002&REV_0000
                            USB\VID_0547&PID_1002
Compatible IDs:             USB\COMPAT_VID_0547&Class_FF&SubClass_00&Prot_00
                            USB\COMPAT_VID_0547&Class_FF&SubClass_00
                            USB\COMPAT_VID_0547&Class_FF
                            USB\Class_FF&SubClass_00&Prot_00
                            USB\Class_FF&SubClass_00
                            USB\Class_FF

Per altri esempi di comandi, vedere Esempi di PnPUtil.

Facoltativamente, collegare un debugger per esaminare il driver appena installato

Usare il debugger del kernel Windows WinDbg per collegarsi al driver e controllarne l'operazione. Per altre informazioni, vedere Introduzione al debug di Windows. Per informazioni sulla configurazione di un computer di destinazione e sulla configurazione di un cavo di debug tramite una connessione di rete, vedere Configurazione automatica del debug del kernel di rete KDNET

Suggerimento

Scaricare il driver e quindi usare il comando del debugger del kernel .kdfiles (Set Driver Replacement Map) per copiare le versioni più recenti del driver per ulteriori test.