2011-11-01 36 views
6

私はこのコードを使用して私のwin7コンピュータから自分のイベントログを読み込みます。リモートコンピュータ用のEventLogQueryリーダー?

EventLogQuery eventsQuery = new EventLogQuery("Security", PathType.LogName, queryString); 
eventsQuery.ReverseDirection = true; 
EventLogReader logReader = new EventLogReader(eventsQuery); 

しかし - 私はリモートコンピュータ(LAN - 同じドメイン)のためのEventLogを読む必要が

どのように私はそれを行うことができますか?

答えて

13

http://msdn.microsoft.com/en-us/library/bb671200(v=vs.90).aspx

public void QueryRemoteComputer() 
    { 
     string queryString = "*[System/Level=2]"; // XPATH Query 
     SecureString pw = GetPassword(); 

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

     pw.Dispose(); 

     // Query the Application log on the remote computer. 
     EventLogQuery query = new EventLogQuery("Application", PathType.LogName, queryString); 
     query.Session = session; 

     try 
     { 
      EventLogReader logReader = new EventLogReader(query); 

      // Display event info 
      DisplayEventAndLogInformation(logReader); 
     } 
     catch (EventLogException e) 
     { 
      Console.WriteLine("Could not query the remote computer! " + e.Message); 
      return; 
     } 
    } 
関連する問題