EventCreate.exe создает значение CustomSource, что это значит?

Инструмент командной строки EventCreate.exe регистрирует определяемый пользователем источник событий в реестре для использования средством просмотра журнала событий Windows, например:

eventcreate /t INFORMATION /ID 100 /L "Application" /SO [SourceName] /D "Description"

изображение

Я написал приложение, которое имеет собственные строки ресурсов журнала событий и зарегистрировано как источник событий, согласно MSDN, но не использует значение CustomSource и работает нормально.

Я не могу найти никакой документации в MSDN или где-либо еще в Интернете о том, для чего именно предназначен CustomSource. Ни один из зарегистрированных источников на моих машинах его не использует.

Кто-нибудь знает, для чего предназначен CustomSource и как он работает? Это просто что-то внутреннее для EventCreate.exe, или журнал событий Windows действительно использует его для чего-то?


person Remy Lebeau    schedule 16.01.2018    source источник
comment
я ищу в system32 и подпапках - только EVENTCREATE.EXE и MSI.DLL, содержащие строку CustomSource (и похоже, что msi.dll здесь не имеет отношения). на основании этого мы можем предположить, что это скорее что-то внутреннее для EventCreate.exe - иначе какой-то другой системный бинарник должен содержать эту строку для запроса этого значения (не думайте, что оно содержится в закодированном виде).   -  person RbMm    schedule 16.01.2018
comment
blogs.msdn.microsoft.com/aaron_margosis/2013/11/01/   -  person RbMm    schedule 17.01.2018
comment
это определенно только внутреннее только для EventCreate.exe   -  person RbMm    schedule 17.01.2018


Ответы (1)


Спасибо @RbMm за указание на эту статью в блоге:

EventCreate и "ОШИБКА: параметр Source используется только для идентификации пользовательских приложений/скриптов"

По какой-то причине EventCreate был разработан только для регистрации событий, связанных с источниками журналов событий, созданными EventCreate. Для этого он добавляет значение REG_DWORD с именем CustomSource в раздел реестра источника при создании нового источника и проверяет это значение для уже существующего источника. Таким образом, в приведенном выше примере, если источник «MyStuff» еще не существовал в журнале приложений, приведенная выше команда создала бы его и настроила его ключ со значением CustomSource. Последующие вызовы EventCreate с тем же источником завершатся успешно после проверки существования значения CustomSource. Однако если источник MyStuff был создан с помощью другого механизма, который не создает флаг CustomSource, например с помощью командлета PowerShell New-EventLog, вы получите сообщение об ошибке. Если вы создадите значение CustomSource в ключе источника событий, EventCreate будет работать с этим источником.

person Remy Lebeau    schedule 17.01.2018