Come utilizzare ETW da un client Windows C ++
Domanda
Sono alla ricerca Event Tracing for Windows (ETW) per consentire a un client di Windows in modalità utente a scrivere le informazioni di analisi. La documentazione esistente è, per dirla alla leggera, follemente incompleta. Ciò che sarebbe davvero di aiuto è un semplice esempio C ++ che scrive messaggi di analisi che utilizzano ETW. Esiste un tale esempio esiste? C'è altra documentazione ETW si potrebbe raccomandare?
Soluzione
Per scrivere un provider per ETW avete due opzioni di entrambi scriverlo come fornitore basata su manifesto (preferito per Vista o superiore) o un classico provider per il supporto legacy. Se basata su manifesto è l'approccio che si vuole andare con quindi controllare un esempio qui . In alternativa si dispone di trovare una classico esempio fornitore qui .
Suppongo che si desidera utilizzare un approccio basata su manifesto come il suo migliore e può supportare fino a 8 sessioni. Il primo passo di un fornitore a base di manifesti ha bisogno di fare è di registrare l'evento utilizzando EventRegister e e poi scrivere ad esso tramite il eventoScrivi o EventWriteString funzione.
Altri suggerimenti
Questo documento da Microsoft è una buona per iniziare con qui