我有以下代碼記錄我的Windows服務,我通過在線研究發現。它在我的服務類裏被完成,就像下面這樣被初始化之前一樣。登錄時爲記錄Windows服務
public GBBInvService()
{
InitializeComponent();
if (!System.Diagnostics.EventLog.SourceExists("MyLogSource"))
System.Diagnostics.EventLog.CreateEventSource("MyLogSource",
"MyDoLog");
eventLog1.Source = "MyLogSource";
eventLog1.Log = "MyDoLog";
}
代碼:
eventLog1.WriteEntry("GBBInvService Service Started");
我也不過是由我們的顧問勸告反對它。他的評論如下:
我會避免讓服務在運行時創建事件源。這要求服務以高權限運行(即,對計算機的訪問比真正需要的更多)。設置Windows事件日誌源實際上是安裝時的工作。您可以到事件日誌安裝程序添加到項目安裝程序文件(與該服務安裝程序一起),並且隨後事件源將一直存在
這個提醒的問題是,我一直沒能找到任何在項目安裝程序文件中創建日誌的示例。我也嘗試將這個日誌創建部分移動到我的項目安裝程序中,但它不會讓我從我的Web服務cs頁面調用或寫入eventlog1。他還建議使用log4net,但這對我來說是新的,並且很難掌握。對於剛剛完成我的第一個Windows服務項目的Windows服務,我仍然很陌生,對於在項目安裝程序中創建日誌,從我的服務cs頁面寫入日誌或登錄log4net的任何方向感到非常感激。
謝謝你。如果您查看了上面提供的鏈接,則頁面底部有一位用戶的評論。我面臨同樣的問題。服務無法啓動。 – user1270384 2013-03-21 00:15:29
添加了可能會導致服務未啓動的更新。 – 2013-03-21 04:38:50