是否有写入此事件日志(log)的方法:

在此处输入图像描述

或者至少是其他一些Windows默认日志(log),where I don't have to register an event source

推荐答案

是的,有一种方法可以写入您要查找的事件日志(log).您不需要创建新的源,只需使用现有的源,它通常与EventLog的名称相同,而且在某些情况下,如事件日志(log)应用程序,无需管理权限即可访问*.

*其他不能直接访问的情况是安全事件日志(log),例如,只能由操作系统访问.

我使用以下代码直接写入事件日志(log)应用程序:

using (EventLog eventLog = new EventLog("Application")) 
{
    eventLog.Source = "Application"; 
    eventLog.WriteEntry("Log message example", EventLogEntryType.Information, 101, 1); 
}

如您所见,事件日志(log)源与事件日志(log)的名称相同.原因可以在Event Sources @ Windows Dev Center中找到(我用粗体标出了源名称):

Eventlog键中的每个日志(log)都包含称为事件源的子键.事件源是记录事件的软件的名称.It is often the name of the application或应用程序的子组件的名称(如果应用程序较大).最多可以向注册表添加16384个事件源.

.net相关问答推荐

Msbuild try 构建 msbuild.exe 而不是我的 .csproj 文件

查询 MongoDb 中嵌入式文档中的一个字段,该字段抛出调用运算符的左侧必须是对持久属性的直接访问

为什么这个同步运行的异步睡眠会挂起?

类似于字典但没有值的 C# 数据 struct

ILMerge 最佳实践

如何等到远程 .NET 调试器附加

基于多个字符分隔符拆分字符串

无法在 Windows 10 上安装 Windows SDK 7.1

System.String.Copy 在 .NET 中有什么用?

自定义属性的构造函数何时运行?

有没有办法从方法返回匿名类型?

.Net 正则表达式:单词字符 \w 是什么?

如何防止任务的同步延续?

如何仅在需要时提升权限?

如何以编程方式删除 WebClient 中的 2 个连接限制

SqlBulkCopy 的推荐批量大小是多少?

MailMessage,Sender 和 From 属性的区别

为什么 .NET 中没有 Tree 类?

使用 LINQ 搜索树

根据条件从列表中删除项目