netcore 监听系统时间发生改变事件

0 PC 显示的日期或时间不正确,在「设置」应用中就可以快速、轻松地进行更改。我们可以将 Windows 10 配置为,根据当前位置来确定时间。但这并不总是能正常工作,例如重启 Windows 时,遇到仍然会获取到错误时间的问题。

如果你的 Windows 10 时间不对,手动调整时间后,一旦重启系统又被重置成错误的时间,则可能是由于系统时区配置不正确造成的:

下边可以使用代码监听系统时间发生改变事件,示例代码

using SystemTimeChanged;

namespace ConsoleApp2;


class Program
{
    static ISystemTimeChangedEvent _systemTimeChangedEvent = new SystemTimeChangedEvent();
    static void Main()
    {
        AppDomain.CurrentDomain.ProcessExit += CurrentDomain_ProcessExit;
        _systemTimeChangedEvent.RegisterTimeChangedAction(SystemEvents_TimeChanged);
        Console.ReadKey();
    }

    private static void CurrentDomain_ProcessExit(object? sender, EventArgs e)
    {
        _systemTimeChangedEvent.Dispose();
    }


    private static void SystemEvents_TimeChanged()
    {
        Console.WriteLine($"TimeChanged :{DateTime.Now}!");
    }

}

代码中用到的类库 SystemTimeChanged,可以到这里下载:https://download.csdn.net/download/weixin_43542114/88582319

你可能感兴趣的:(c#)