使用 C# 从事件查看器获取最新的 Windows 启动登录事件数据

本文关键字:事件 Windows 启动 最新 登录 数据 使用 获取 | 更新日期: 2023-09-27 17:57:16

我正在从Windows安全日志和事件查看器中获取与登录和注销相关的所有信息,但我只想从所有信息中获取最新的loggon事件信息,请您应用一些linq以获取最顶部的启动登录事件信息

这是我正在尝试的代码

      EventLog log = new EventLog()
        {
            Source = "Microsoft Windows security auditing.",
            Log = "Security"
        };
      foreach (EventLogEntry entry in log.Entries)
        {
            Console.WriteLine(entry.Message);
        }

您能否在 Lambda 基础中进行任何 foreach 以仅获取最新的登录事件

使用 C# 从事件查看器获取最新的 Windows 启动登录事件数据

下面是

获取最新"登录 (4624)"和"特殊登录 (4672)"的示例

  var log = new EventLog
  {
    Source = "Microsoft Windows security auditing.",
    Log = "Security"
  };
  var latestLogon =
    log.Entries.Cast<EventLogEntry>()
      .Where(entry => entry.InstanceId == 4624 || entry.InstanceId == 4672)
      .OrderByDescending(i => i.TimeWritten)
      .FirstOrDefault();