2011-04-05 62 views
2

我有一個需求,我需要從內部網頁向內部用戶打開一個事件查看器。我有一個鏈接「Evetn Viewer」和一個下拉菜單「Servers」,當用戶選擇一個服務器並單擊鏈接時,我想打開Windows事件查看器。這個怎麼做?如何使用c#從網頁打開事件查看器?

回答

2
EventLogSession session = new EventLogSession(
     "RemoteComputerName",// Remote Computer 
     "Domain",// Domain 
     "Username",// Username 
     pw, 
     SessionAuthentication.Default); 

在這裏閱讀更多How to manage event logs using Visual C# .NET

+0

Stefan,我試着從你提供的鏈接代碼,它適用於我的本地事件查看器,但如果我想訪問服務器的事件查看器,我得到未經授權的錯誤。我用:使用(EventLog ev = new EventLog(logType,machinename))。由於基於Web的應用程序試圖訪問事件日誌(我只讀),不知道如何編寫代碼來驗證和授權用戶訪問日誌?感謝您能迴應。 – 2011-04-06 20:31:33

+0

承載Web應用程序的計算機應與服務器位於同一個域中。在活動目錄中,您應該創建一個具有EnventLog讀取權限的用戶。然後,您應該使用示例中所示的EventLogSession並傳遞AD用戶的憑據。 – 2011-04-07 10:02:55

+0

感謝Stefan,任何提供示例步驟的鏈接? – 2011-04-07 12:31:34

1

打開Windows中的事件查看器會與某些類型的ActiveX控件的唯一途徑。事件查看器可以以服務器名稱作爲參數啓動:eventvwr myserver

這裏有一個關於如何創建這些一些基本的指導:http://www.c-sharpcorner.com/uploadfile/dsandor/activexinnet11102005040748am/activexinnet.aspx

否則你會被限制在加載事件服務器端,並在標記(請確保您限制的結果返回他們 - 事件日誌可以得到很大!)

+0

感謝戴夫,我認爲更好我應該得到的列表,並使用EventLog類在頁面上顯示它。 – 2011-04-05 17:13:08

相關問題