用于远程计算机的EventLogQuery阅读器

本文关键字:EventLogQuery 计算机 用于 | 更新日期: 2023-09-27 18:12:53

我正在使用这段代码从我的win7计算机上读取我自己的事件日志。

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

然而,我需要阅读一个远程计算机(Lan -同一域)的EventLog

用于远程计算机的EventLogQuery阅读器

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;
        }
    }