Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

EventLogQuery reader for remote computer?

Tags:

c#

event-log

lan

I'm using this code to readmy own event Log from my win7 Computer.

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

However - I need to read the EventLog for a remote computer ( Lan - Same domain)

How can I do that ?

like image 238
Royi Namir Avatar asked Nov 01 '11 13:11

Royi Namir


1 Answers

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;
        }
    }
like image 172
Ken Avatar answered Sep 17 '22 17:09

Ken