Messaggi di errore del driver statico
Questa sezione illustra il significato di alcuni dei messaggi di errore SDV più frequentemente visualizzati e suggerisce metodi per risolverli.
Quando si avvia SDV da Visual Studio, è possibile che vengano visualizzati gli errori seguenti:
- SDV funziona solo su configurazioni non di debug: come indicato nel messaggio, è necessario eseguire SDV in una configurazione non di debug. Assicurarsi che il progetto sia impostato su una configurazione di versione o crearne uno se non disponibile e avviare nuovamente SDV.
- Si è verificato un errore durante il caricamento delle regole disponibili: SDV non riesce a trovare le regole per il modello di driver o non è in grado di determinare correttamente il modello di driver (molto più probabile se il driver non è un driver WDM, KMDF, NDIS o Storport). Se wdk è installato correttamente, potrebbe essere possibile risolvere questo errore eseguendo SDV direttamente dalla riga di comando (vedere Comandi del driver statico Verifier (MSBuild)).
- SDV non è riuscito a pulire la directory del driver: in alcuni casi, gli errori di autorizzazione potrebbero impedire a SDV di pulire correttamente i risultati precedenti dalla directory del driver quando si fa clic sul pulsante "Pulisci". Questo errore si verificherà anche se i file sdv delle esecuzioni precedenti sono attualmente in uso. Assicurarsi che non vengano usati i file SDV nella directory del driver, quindi rimuovere eventuali cartelle "sdv" e "sdv.temp" e tutti i file "staticdv.job".
Se SDV non riesce durante il tentativo di analisi, la fase in cui non è riuscita nell'output standard verrà stampata. Quando si esegue SDV dalla GUI di Visual Studio, è possibile visualizzare questo output passando alla scheda "Avvisi".
Le fasi sdV potrebbero non riuscire in:
- NormalBuild: SDV non è riuscito a compilare il driver usando i comandi MSBuild standard. Questo problema può verificarsi se si dispone di logica di compilazione specializzata, si basano sugli elementi della soluzione nel file di progetto o se sono presenti componenti di compilazione esterni. Se il progetto si basa sulla proprietà $(SolutionDir), è possibile specificare questa variabile direttamente eseguendo nuovamente SDV dalla riga di comando e aggiungendola alla riga di comando aggiungendo /p:SolutionDir=[dir della soluzione] alla fine del comando MSBuild. Vedere Comandi di verifica driver statici (MSBuild).See Static Driver Verifier commands (MSBuild).
- InterceptedBuild: SDV non è riuscito a compilare il driver per l'analisi.
- Analisi: SDV non è riuscito a trovare i punti di ingresso del driver. Un errore qui può indicare che non sono stati trovati punti di ingresso ed è necessario aggiornare i tipi di ruolo della funzione o sdv-map.h. Per altre informazioni, vedere Uso delle dichiarazioni del tipo di ruolo della funzione e approvazione del file Sdv-map.h .
- FinalCompile: SDV non è riuscito a compilare il driver con la regola e il modello del sistema operativo.
- CheckRule: SDV non è riuscito a verificare correttamente la regola.
Per altre informazioni sull'errore, è possibile abilitare la diagnostica per SDV. Per informazioni dettagliate, vedere Static Driver Verifier Diagnostics (Diagnostica del driver statico ).