EventCreate.exe 创建一个“CustomSource”值,它是什么意思?

Rem*_*eau 1 winapi eventlog-source event-log custom-eventlog

命令行EventCreate.exe工具在注册表中注册用户定义的事件源以供 Windows 事件日志查看器使用,如下所示:

eventcreate /t INFORMATION /ID 100 /L "Application" /SO [SourceName] /D "Description"
Run Code Online (Sandbox Code Playgroud)

图像

我编写了一个应用程序,它有自己的事件日志资源字符串,并根据 MSDN注册为事件源,但它不使用该CustomSource值并且工作正常。

我在 MSDN 或网上其他地方找不到任何关于其CustomSource确切用途的文档。我的机器上的注册源都没有使用它。

有谁知道它的CustomSource用途是什么以及它是如何工作的?它只是 的内部内容EventCreate.exe,还是 Windows 事件日志实际上将其用于某些用途?

Rem*_*eau 5

感谢@RbMm 指出这篇博客文章:

\n

EventCreate 和“错误:源参数仅用于识别自定义应用程序/脚本”

\n
\n

无论出于何种原因,EventCreate 的设计目的只是\xc2\xa0 来记录与 EventCreate 创建的事件日志\xc2\xa0 源关联的事件。\xc2\xa0它通过CustomSource在源的源中添加一个名为 \xc2\xa0 的 REG_DWORD 值来实现此目的。创建新源时的注册表项,并检查该值\xc2\xa0是否已存在\xc2\xa0源。\xc2\xa0 因此,在上面的示例中,如果应用程序日志中尚不存在“MyStuff”源,则上述命令将创建它并使用值配置其键CustomSource。\xc2\xa0 对 EventCreate 的后续调用在验证值的存在后,使用相同的源将成功CustomSource。\xc2\xa0 但是,如果“MyStuff”源是通过另一种未创建 CustomSource 标志的机制创建的,例如使用 PowerShell\xc2 \xa0 New-EventLog\xc2\xa0cmdlet,那么您将收到错误消息。\xc2\xa0 如果您CustomSource在事件源的键中创建一个值,则 EventCreate 将使用该源。

\n
\n