【问题标题】:EventLog.WriteEntry advanced information [duplicate]EventLog.WriteEntry 高级信息 [重复]
【发布时间】:2012-11-10 03:06:26
【问题描述】:

可能重复:
Putting XML Data into the Windows Event Log

比较从我的应用程序自定义事件的事件日志复制的 XML 和系统事件。与使用写入条目发送的 C# 事件相比,似乎无法添加扩展信息。

for example: <EventData>

我还没有找到可以操纵该部分事件的任何地方。

<EventData>
  <Data Name="PackageName">MICROSOFT_AUTHENTICATION_PACKAGE_V1_0</Data>
  <Data Name="TargetUserName">testuser</Data>
  <Data Name="Workstation">CRAPSTATION</Data>
  <Data Name="Status">0xc0000064</Data>
</EventData>

在尝试重现确切事件或模拟其他事件时。我想匹配系统所做的一些事情(如果可能的话),以使事件在我们的审计软件中显示相同,或者重播某些事件以进行测试。一个示例是从基于 IIS 表单的身份验证页面写入失败的登录事件,使其看起来像系统登录失败。审计软件将知道如何根据事件在日志中的形成方式来处理事件的分类。

似乎我只能从 C# 事件中获取事件数据,如下所示

<EventData>
  <Data>The supplied credential is invalid.</Data>
</EventData>

是否可以形成自己的 XML,然后将其发送而不是使用 WriteEntry

【问题讨论】:

    标签: c# events customization event-log


    【解决方案1】:

    如果您想要完全访问 Windows 事件日志,那么您可能必须使用平台调用 - 尽管可能有一个我不知道的库来执行此操作。

    http://msdn.microsoft.com/en-us/library/windows/desktop/aa385785(v=vs.85).aspx 提供本机事件日志 API 的文档。

    【讨论】:

    • 有趣的是,没有更简单的方法可以做到这一点是 c#.. 似乎 c# 有自己的清单类型,并且本质上非常通用。要获得高级功能,我需要创建一个清单......编写一些非托管代码并使用 pinvoke......从它的外观来看。
    猜你喜欢
    • 2012-10-28
    • 1970-01-01
    • 2011-02-26
    • 2018-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-26
    • 2018-01-01
    相关资源
    最近更新 更多