在Windows中,应用程序事件日志中有哪些默认事件源?

fre*_*shr 11 windows clickonce eventlog-source event-log

精简版:

应用程序事件日志中是否始终包含事件源"应用程序"和"应用程序错误"?它们是否适用于Windows XP,Vista和Windows 7的新安装?使用它们而不是创建我自己的源(对我来说是不可能的)真的很糟糕吗?

长版:

我有一个ClickOnce应用程序,用户在没有管理员权限的情况下使用它们.

当我尝试写入Appliction事件日志时,我收到安全异常.(Windows事件日志记录基础结构正在尝试创建一个新的事件源,并获得安全性违规.)

所以我想尝试重用现有的事件源.我在应用程序事件日志中找到了两个"通用声音"源.这些是否始终是Windows安装的一部分,并且会做出合理的选择?

  • 应用
  • 应用程序错误

    我确信这是不赞成的,因为我应该使用自己的事件源来区分我的应用程序.但这是因为不常发生的致命错误,应该通过我的代码记录到其他地方.我只想要一个非常容易的地方在客户端机器上找到它们以防万一出错...

  • Joh*_*udd 3

    当我尝试写入应用程序事件日志时,出现安全异常。(Windows 事件日志基础结构试图为我创建一个新的事件源,但出现了安全违规。)

    我刚刚在这里回答了这个问题:Using EventLog in ClickOnce application

    所以我想尝试重用现有的事件源。我在应用程序事件日志中发现了两个“听起来很笼统”的来源。这些是否始终是 Windows 安装的一部分,并且会做出合理的选择?

    这样做确实不明智。现有事件源将由 Windows 应用程序或第三方应用程序使用。如果其中任何一个被删除,或者被服务包或补丁之类的东西改变,你的程序将会崩溃,除非你已经实现了异常处理来优雅地处理异常,但这样你就不会记录任何事件。

    另请考虑将应用程序移植到下一版本的 Windows 可能需要做的工作。我建议你为自己的背做一根棍子。

    在我链接的答案中,我建议处理问题的最佳方法是使用管理员权限安装应用程序,安装程序创建源,或者创建一个简单的应用程序,使用管理员角色有效地执行相同的操作。

    我唯一可以建议的是始终在管理模式下运行您的应用程序。