1. 程式人生 > >使用EventLog元件讀寫事件日誌

使用EventLog元件讀寫事件日誌

實現效果:

  

知識運用:

  Eventlog類的SourceExists方法    //確定指定的事件源是否已在本地計算機註冊

  public static bool  SourceExists(string source)

  和DeleteEventSource方法        //從事件日誌中移除應用程式的事件源註冊

  public static void DeleteEventLogSource(string source)

實現程式碼:

        private void Form1_Load(object sender, EventArgs e)
        {
            if (System.Diagnostics.EventLog.SourceExists("MySource"))                   //判斷是否存在事件源
            {
                System.Diagnostics.EventLog.DeleteEventSource("MySource");              //刪除事件源
            }
            System.Diagnostics.EventLog.CreateEventSource("MySource","NewLog1");        //建立日誌資訊
            eventLog1.Log = "NewLog1";                                                  //設定日誌名稱
            eventLog1.Source = "MySource";                                              //事件源名稱
            eventLog1.MachineName = ".";                                                //表是本機
        }

        private void btn_write_Click(object sender, EventArgs e)
        {
            if (System.Diagnostics.EventLog.Exists("NewLog1"))                          //判斷日誌檔案是否存在
            {
                if (textBox1.Text != "")                                                //文字框不為空
                {
                    eventLog1.WriteEntry(textBox1.Text.ToString());                     //寫入日誌
                    MessageBox.Show("日誌資訊寫入成功");                                //訊息框提醒
                    textBox1.Text = "";                                                 //清除文字框內容
                }
                else { MessageBox.Show("日誌內容不能為空"); }
            }
            else 
            {
                MessageBox.Show("日誌資訊不存在");
            }

        }