0
我想创建一个小型控制台应用程序,该应用程序将具有倒数计时器。 我需要知道我第一次登录到Windows的时间戳。获取当天的第一次登录
我该怎么做? 我发现我可以使用WMIC:
wmic netlogin get lastlogon
为了接收上次登录时间,但我想要第一次登录的一天。
我想创建一个小型控制台应用程序,该应用程序将具有倒数计时器。 我需要知道我第一次登录到Windows的时间戳。获取当天的第一次登录
我该怎么做? 我发现我可以使用WMIC:
wmic netlogin get lastlogon
为了接收上次登录时间,但我想要第一次登录的一天。
如果您有足够的权限,则可以使用System.Diagnostics.EventLog类。
登录事件存储在安全日志中,与事件ID = 4624(在.NET类EVENTID音符现在已经过时& INSTANCEID应该被使用。
你可以得到日志条目与下面的完整列表代码:
using System.Diagnostics;
....
....
EventLog eventLogItem = new EventLog("Security");
您可以查询日志&提取物只是登录附件如下:
var sev = eventLogItem.Entries.Cast<EventLogEntry>().Where(ev => (ev.InstanceId == 4624));
您可以到这个限制只是你想要的东西,如用户:
var sev = eventLogItem.Entries.Cast<EventLogEntry>().Where(ev => (ev.InstanceId == 4624)
&& (ev.Message.Contains(@"username")));
如果检查消息您可以改善过滤。然后您可以按生成时间&的顺序选择当天的最早时间。
尝试搜索事件日志 –