Condividi tramite


Aggiunta di macro WPP a un provider di traccia

Per aggiungere la forma predefinita di traccia software WPP a un provider di traccia, ad esempio un driver in modalità kernel o un'applicazione in modalità utente, aggiungere le seguenti direttive del preprocessore C e chiamate macro WPP al codice sorgente del provider:

  • Una direttiva #include del modulo seguente per ogni file di origine contenente tutte le macro WPP. Questa istruzione include il file di intestazione del messaggio di traccia creato dal preprocessore WPP per ogni file di origine:

    #include <source-file-name.tmh>
    

    Il file di intestazione del messaggio di traccia deve essere incluso in un file di origine prima delle chiamate di macro WPP e dopo aver definito una macro WPP_CONTROL_GUIDS .

  • Direttiva WPP_CONTROL_GUIDS definizione per ogni file di origine che include altre macro WPP.

    Questa definizione specifica il GUID del controllo del driver e i nomi dei flag di traccia definiti dal driver. La definizione deve essere aggiunta a un file di origine prima dell'istruzione #include che include il file di intestazione del messaggio di traccia del file.

  • Una macro WPP_INIT_TRACING chiamata al codice sorgente del driver.

    Per i driver, questa macro attiva la traccia software nel driver. Questa macro viene in genere chiamata durante l'inizializzazione del driver, ad esempio in una routine DriverEntry .

    Per le applicazioni in modalità utente, chiamare questa macro a un punto nel codice sorgente in cui non sono stati effettuati tentativi di traccia in precedenza.

    Dopo l'inizializzazione, è possibile usare TraceView o Tracelog per avviare una sessione di traccia software e visualizzare i messaggi di traccia.

  • Una macro WPP_CLEANUP chiamata al codice sorgente del provider di traccia . Questa macro disattiva la traccia software nel driver.

    Per i driver, questa chiamata macro viene in genere aggiunta alla routine di scaricamento del driver.

    Per le applicazioni in modalità utente, chiamare questa macro a un punto nel codice sorgente dopo l'ultimo tentativo di traccia.

  • Chiamate macro DoTraceMessage per registrare i messaggi di traccia.