我尝试使用WriteEntry
和类的WriteEvent
方法EventLog
.
EventLog.WriteEntry("Saravanan", "Application logs an entry",
EventLogEntryType.Information, 2, 3);
EventLog.WriteEvent("Saravanan", new EventInstance(2, 3),
"Application logs an event");
Run Code Online (Sandbox Code Playgroud)
两者都输出相同的结果.
这些方法的使用有什么不同吗?
如果只有微小的差异,为什么不通过任何一个WriteEvent()
或WriteEntry()
方法的重载来完成,而不是引入一个新的方法?
Mar*_*age 47
EventLog.WriteEntry
是一种"快速而肮脏"的方式来写入事件日志,您可以在其中编写字符串.EventLog.WriteEvent
使您能够充分利用本机Win32 API.但是,为此,您应该创建一个本地化的消息文件,然后使用消息编译器(mc.exe)进行编译.每个事件都可以包含替换字符串,并且可以进行本地化以匹配计算机上的区域设置.
为了避免创建消息文件的额外步骤,事件日志API的.Net包装器使用简单地插入作为参数提供的字符串的消息.这些消息由.Net文件夹中的EventLog.WriteEntry
嵌入资源使用并存储EventLogMessages.dll
.
通常使用EventLog.WriteEntry
是足够的,但如果您需要本地化您的消息或想要在源代码之外维护它们,您应该创建一个消息文件并使用EventLog.WriteEvent
.
归档时间: |
|
查看次数: |
10574 次 |
最近记录: |