2012-11-21 20 views
0

我需要從安全日誌中的窗口來閱讀,但用戶不會有管理權限這樣做,並且應用程序會拋出異常,如何在.NET中讀取沒有管理權限的事件日誌?

EventLog[] a = EventLog.GetEventLogs(); 

foreach (var item in a) 
{ 
    if (item.Log == "Security") 
    {    
     foreach (EventLogEntry item2 in item.Entries)//The exception thrown here 
     { 
      //TODO 
     } 
    } 
} 

我只是想讀,我不我不想寫任何東西。 如何在沒有這些權限的情況下訪問這些條目?

+2

我對此一無所知,但如果可以的話,我會很驚訝。這就是安全級別的要點 - 用戶和他們的軟件只能做他們被允許做的事情。你需要從安全日誌中得到什麼?有可能有另一種方法來獲得您需要的特定信息。 – Bobson

+0

這很可能是http://superuser.com問題,因爲這是權限問題而不是開發問題。 – jlafay

+0

如果這不是問題,我不會問:)旁邊,如果有方法我可以使用.NET代碼或.bat文件更改日誌設置我的問題將被解決,因爲我可以以管理員身份運行應用程序我可能會改變一切,如果可能的話,當然,,謝謝你的幫助 –

回答

2

這是有可能的,但它需要由合格的管理員設置必要權限的大量步驟。欲瞭解更多信息,請參閱http://blogs.technet.com/b/janelewis/archive/2010/04/30/giving-non-administrators-permission-to-read-event-logs-windows-2003-and-windows-2008.aspx

如果您沒有明確獲取閱讀權限,那麼您不能 - 這就是DRM的要點。

+0

說實話,我幾乎沒有從鏈接中理解任何東西,但是,我的應用程序需要一次以管理員身份運行,並且我可以確保,如果可以使用您給我使用的鏈接配置系統.NET和.bat文件即使需要一週,我也會學習這篇文章?所以,我們可以使用.NET代碼和.bat文件完成這些步驟:)?非常感謝 –

相關問題