C#實現自定義windows系統(tǒng)日志的方法
更新時間:2015年08月22日 16:49:16 作者:我心依舊
這篇文章主要介紹了C#實現自定義windows系統(tǒng)日志的方法,涉及C#針對windows系統(tǒng)日志的創(chuàng)建、讀寫及刪除技巧,非常具有實用價值,需要的朋友可以參考下
本文實例講述了C#實現自定義windows系統(tǒng)日志的方法。分享給大家供大家參考。具體實現方法如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; namespace ConsoleApp { /// <summary> /// 系統(tǒng)日志 /// </summary> public class PackSystemEventLog { /// <summary> /// 錯誤信息 /// </summary> private static string ErrorInfo { get; set; } /// <summary> /// 創(chuàng)建系統(tǒng)事件日志分類 /// </summary> /// <param name="eventSourceName">注冊事件源(比如說這個日志來源于某一個應用程序)</param> /// <param name="logName">日志名稱(事件列表顯示的名稱)</param> /// <returns></returns> public static bool CreateSystemEventLogCategory(string eventSourceName, string logName) { bool createResult = false; try { if (!EventLog.SourceExists(eventSourceName)) { EventLog.CreateEventSource(eventSourceName, logName); } createResult = true; } catch (Exception ex) { createResult = false; ErrorInfo = ex.Message; } return createResult; } /// <summary> /// 刪除系統(tǒng)事件日志分類 /// </summary> /// <param name="eventSource">EventName事件源</param> /// <returns></returns> public static bool RemoveSystemEventSourceCategory(string eventSource) { bool createResult = false; try { if (EventLog.SourceExists(eventSource)) { EventLog.DeleteEventSource(eventSource, "."); } createResult = true; } catch (Exception ex) { createResult = false; ErrorInfo = ex.Message; } return createResult; } /// <summary> /// 向系統(tǒng)日志中寫入日志 /// </summary> /// <param name="eventSource">事件源</param> /// <param name="msg">寫入日志信息</param> /// <param name="type">日志文本分類(警告、信息、錯誤)</param> /// <returns></returns> public static bool WriteSystemEventLog(string eventSource, string msg, EventLogEntryType type) { bool writeResult = false; try { if (!EventLog.SourceExists(eventSource)) { writeResult = false; ErrorInfo = "日志分類不存在!"; } else { EventLog.WriteEntry(eventSource, msg, type); writeResult = true; } } catch (Exception ex) { writeResult = false; ErrorInfo = ex.Message; } return writeResult; } /// <summary> /// 刪除事件源中l(wèi)ogName(好像刪除了所有的該分類的日志) /// </summary> /// <param name="eventSource"></param> /// <param name="logName"></param> /// <returns></returns> public static bool RemoveSystemEventLog(string eventSource, string logName) { bool removeResult = false; try { if (!EventLog.SourceExists(eventSource)) { removeResult = false; ErrorInfo = "日志分類不存在!"; } else { EventLog.Delete(logName); removeResult = true; } } catch (Exception ex) { removeResult = false; ErrorInfo = ex.Message; } return removeResult; } /// <summary> /// 獲取錯誤信息 /// </summary> /// <returns></returns> public static string GetErrorMessage() { return ErrorInfo; } } }
希望本文所述對大家的C#程序設計有所幫助。
您可能感興趣的文章:
相關文章
Windows系統(tǒng)中C#讀寫ini配置文件的程序代碼示例分享
這篇文章主要介紹了C#讀寫ini配置文件的程序代碼示例分享,在Windows下可以利用Win32的API函數輕松實現,需要的朋友可以參考下2016-04-04asp.net core 使用 tensorflowjs實現 face recognition的源代碼
tensorflowjs,在該項目中使用了ml5js這個封裝過的機器學習JavaScript類庫, 使用起來更簡單,本文給大家分享asp.net core 使用 tensorflowjs實現 face recognition的源代碼,需要的朋友參考下吧2021-06-06c#檢測usb設備撥插類庫USBClassLibrary分享
這篇文章主要介紹了c#檢測usb設備撥插類庫USBClassLibrary的簡單示例,需要的朋友可以參考下2014-04-04Entity?Framework代碼優(yōu)先(Code?First)模式
這篇文章介紹了Entity?Framework代碼優(yōu)先(Code?First)模式,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06