Windows: проблема с поставщиком ETW на основе манифеста

У меня есть приложение C/C++, в котором я хочу использовать решение ETW на основе манифеста. У меня возникают проблемы при использовании инструментов, которые открывают сгенерированный *.etl (например, файл по умолчанию в Windows или любой другой), поскольку я не могу видеть конкретные сведения о своих событиях (определенные шаблоны в манифесте).

Как зарегистрировать манифест в системе и указать его в хорошо известных потребительских инструментах ETW для отображения этой информации?

Я сделал то, что было упомянуто в http://www.codeproject.com/Articles/570690/Application-Analysis-with-Event-Tracing-for-Window

mc FirstETW.man //included generated *.rc in project
mc -um FirstETW.man //to generate C files that I've used in the ETW provider executable
rc FirstETW.rc // not sure of this .Already included the generated *.rc script from previous step in the visual studio project

Также зарегистрирован манифест с помощью:

wevtutil.exe im FirstETW.man  //installs the provider

Есть идеи ?


person Gmt    schedule 29.05.2013    source источник


Ответы (1)


Проблема была связана с тем, что в манифесте было указано имя файла messageFileName поставщика, которое отличалось от местоположения фактического двоичного файла, который включал ресурсы (строки), необходимые потребителям ETW (например, журнал событий или другие инструменты).

Кроме того, если вы ожидаете увидеть журналы в средстве просмотра событий, убедитесь, что вы включили в средстве просмотра событий поставщик для типа канала аналитики или отладки.

person Gmt    schedule 30.05.2013