Nota
L'accesso a questa pagina richiede l'autorizzazione. Puoi provare ad accedere o a cambiare directory.
L'accesso a questa pagina richiede l'autorizzazione. Puoi provare a cambiare directory.
Nota
Le build controllate erano disponibili nelle versioni precedenti di Windows, precedenti a Windows 10 versione 1803. Usare strumenti come Driver Verifier e GFlags per controllare il codice driver nelle versioni successive di Windows.
Le librerie di driver di smart card supportano diverse funzionalità di debug. Ogni funzionalità di debug è rappresentata da una delle costanti seguenti, definite nel file di intestazione Smclib.h :
DEBUG_IOCTL
DEBUG_ATR
DEBUG_PROTOCOL
DEBUG_DRIVER
DEBUG_TRACE
DEBUG_ERROR
DEBUG_BREAK
DEBUG_ALL
Il set combinato di funzionalità di debug abilitate è rappresentato da un valore denominato livello di debug. È possibile calcolare questo valore prendendo l'OR bit per bit delle costanti che corrispondono alle funzionalità che si desidera abilitare.
Esistono due modi per impostare il livello di debug. In primo luogo, è possibile usare il programma di test del driver di smart card, Scdrvtst, fornito con Windows Driver Kit (WDK). Il secondo consiste nell'usare la routine della libreria di driver smart card SmartcardSetDebugLevel .
In entrambi i casi, è necessario passare il valore per il livello di debug desiderato al programma o alla routine che imposta il livello di debug. Ad esempio, per impostare il livello di debug dal driver usando una routine della libreria di smart card, effettuare la chiamata seguente:
SmartcardSetDebugLevel(DebugLevel);
Per scrivere messaggi di debug da un driver lettore, il driver deve chiamare la routine seguente:
SmartcardDebug(
ULONG DebugLevel,
PCHAR Message
);
Importante
È necessario installare la versione controllata del sistema operativo e la versione selezionata del driver per ottenere i messaggi di debug.
Questa routine può essere usata anche per scrivere messaggi in un debugger remoto nei modi seguenti.
Per scrivere messaggi di errore, usare la costante DEBUG_ERROR per DebugLevel.
Per scrivere messaggi di driver standard, usare la costante DEBUG_DRIVER.
Per scrivere messaggi di traccia che indicano quando il driver del lettore entra o esce da una routine, usare DEBUG_TRACE come DebugLevel.
Durante lo sviluppo di un driver, usare la versione selezionata della libreria driver di smart card e impostare il livello di debug sul valore massimo usando SmartcardSetDebugLevel(DEBUG_ALL) nella routine DriverEntry .
Per informazioni sulla configurazione di una sessione di debug remoto, vedere Debug di Windows.