Я изучаю трассировку событий для Windows (ETW), чтобы позволить клиенту окна пользовательского режима записывать информацию трассировки. Существующая документация - это, мягко говоря, безумно неполная. То, что действительно поможет, - это простой пример С++, который записывает трассировочные сообщения с использованием ETW. Существует ли такой пример? Есть ли другая документация ETW, которую вы могли бы порекомендовать?
Как использовать ETW из клиента Windows С++
Ответ 1
Чтобы написать Поставщик для ETW, у вас есть два варианта написания его как поставщика на основе манифеста ( предпочтительнее для Vista или выше) или классический поставщик для поддержки старых версий. Если на основе манифеста находится подход, с которым вы хотите пойти, тогда посмотрите пример здесь. Кроме того, здесь вы найдете классический пример поставщика.
Я предполагаю, что вы хотите использовать подход, основанный на манифестах, как лучший и можете поддерживать до 8 сеансов. Первый шаг для провайдера, основанного на манифестах, - это зарегистрировать событие, используя EventRegister, а затем записать в это через EventWrite или EventWriteString.
Ответ 2
Этот документ от Microsoft является хорошим, чтобы начать с здесь