2013-01-31 41 views
1

下面是我用來初始化事件日誌的代碼,下面是我用來寫入日誌的示例代碼行。WCF服務不寫入事件日誌

private string sSource = "DaVinci"; 
private string sLog = "WCF WebService"; 

//Initialize Event Log 
if(!EventLog.SourceExists(sSource)) EventLog.CreateEventSource(sSource, sLog); 

//Write openining message 
EventLog.WriteEntry(sSource, "Opening WCF Service", EventLogEntryType.Warning); 

但是,該程序目前沒有按照指示寫入日誌。沒有任何類型的消息正在寫入。任何人都可以看到上面的代碼有什麼問題,或者提供關於在哪裏尋找問題的建議?

回答

3

是的,sLog應該是您想在事件查看器中寫入的日誌類型。例如,Application會將其寫入Windows日誌下的應用程序日誌。

編輯: 您可能沒有創建事件源的權限。 嘗試添加該鍵,您的註冊表: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\YourSourceNameHere]

另外,如果你沒有運行你的應用程序作爲管理員,嘗試這樣做也是如此。

+0

我將字符串聲明更改爲以下內容:'private string sLog =「Application」;'它仍然沒有寫入日誌。 – NealR

+0

編輯答案,希望這會有所幫助 – Artless

+0

您是正確的,Web服務沒有列在應用程序文件夾下。源代碼是否與代碼中的名稱相同? (在這種情況下:「達芬奇」) – NealR