zoukankan      html  css  js  c++  java
  • EventLog 类【转】

    EventLog 类提供了C#与Windows事件日志交互的功能。  很多时候我们可以把日志写到windows事件日志中.

    说明:EventLog 使您可以访问或自定义Windows 事件日志。通过C#提供的EventLog类,可以读取现有日志,向日志中写入项,创建或删除事件源,删除日志,以及响应日志项。也可在创建事件源时创建新日志。

    打开Windows事件日志的方法

    右击我的电脑->管理->事件日志就可以了.

    CreateEventSource
    已重载。 建立一个能够将事件信息写入到系统的特定日志中的应用程序。


    Delete
    已重载。 移除日志资源。


    DeleteEventSource
    已重载。 从事件日志中移除应用程序的事件源注册。

    SourceExist
    已重载。 在计算机的注册表中搜索给定的事件源。


    WriteEntry
    已重载。 将项写入事件日志。


    WriteEvent
    已重载。 向事件日志写入本地化事件项。

    为了能够使用EventLog,我们需要引入usingSystem.Diagnostics命令空间.下面两个方法在你捕获到异常或其他时可以调用.

    private void WriteError(string sText)
    {
         if (!EventLog.SourceExists(sEventSource))
                 EventLog.CreateEventSource(sEventSource, sEventLog);
              EventLog.WriteEntry(sEventSource,sText, EventLogEntryType.Error);

    }

    private void WriteInfo(string sText)
    {
           if (!EventLog.SourceExists(sEventSource))
               EventLog.CreateEventSource(sEventSource, sEventLog);
            EventLog.WriteEntry(sEventSource,sText, EventLogEntryType.Information);       
    }

     

    下面是一个简单使用的例子.

    try

    {

    if(1/0);

    }

    catch(Excepetion ex)

    {

    WriteError(ex.message);

    }

    这样我们就可以成功的写入到Windows事件中..:)

    EventLog(事件日志)的读写方法

    在C#中读写EventLog(事件日志)挺简单的,代码量也比较小。

    1.加入System.DiagnosticsName Space;

    using System.Diagnostics;

    2.声明一个EventLog类的实例。

    EventLog eventLog;
    eventLog=new EventLog("TestEvent",".","mySource");

    "TestEvent"是建立一个新的EventLog名,
    ".": 表示本机
    "mySource": 源名
    如果以上不设参数,就默认为"Application"

    设好以后,就可以读写了。

    写:

    eventLog.Source="mySource";
    eventLog.WriteEntry("Log text");
    MessageBox.Show("Write Complete!")


    读:

    lstEvent.Items.Clear();
    eventLog.Log="TestEvent";
    foreach(EventLogEntry eventlogEntry in eventLog.Entries)
    {
    lstEvent.Items.Add(eventlogEntry.Message);
    }

     

  • 相关阅读:
    zypper命令使用示例
    《大数据之路:阿里巴巴大数据实践》——1-5章
    《织云 Metis 时间序列异常检测全方位解析
    《Replicator Neural Networks》
    《软件应用 | 用 R 语言做因果推断?你少不了这些包》
    《【统计】Causal Inference》
    《Google 开源AI项目15个》
    《TF-Replicator:研究人员的分布式机器学习》
    《TF-Replicator, GPipe, Mesh-Tensorflow 三个库对比》
    虚拟对抗训练:一种新颖的半监督学习正则化方法
  • 原文地址:https://www.cnblogs.com/chenqingwei/p/1923912.html
Copyright © 2011-2022 走看看