这篇文章主要为大家详细介绍了C#定时每天00点00分00秒自动重启软件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了C#定时每天自动重启软件的具体代码,供大家参考,具体内容如下
1、添加Timer控件,这个控件可以显示倒计时功能
2、Timer控件的Tick事件代码:
private void timerDownCount_Tick(object sender, EventArgs e)
{
string dateDiff = null;
//获取当前时间
DateTime DateTime1 = DateTime.Now;
//第二天的00点00分00秒
DateTime DateTime2 = DateTime.Now.AddDays(1).Date;
//计算两个时间相差多少秒
int sec = (int)DateTime2.Subtract(DateTime1).TotalSeconds;
if (sec == 0)
{
//延迟1秒执行(为什么要延迟?如果不延迟,重启的瞬间两个时间差依然还是0,就会再次触发重启)
Thread.Sleep(1000);
//--------------重启软件 start---------------
//开启新的实例
Process.Start(Application.ExecutablePath);
//关闭当前实例
Process.GetCurrentProcess().Kill();
//--------------重启软件 end-----------------
}
if (sec < 0)
{
this.timerDownCount.Stop();
}
else
{
//把2个时间转成TimeSpan,方便计算
TimeSpan ts1 = new TimeSpan(DateTime1.Ticks);
TimeSpan ts2 = new TimeSpan(DateTime2.Ticks);
//时间比较,得出差值
TimeSpan ts = ts1.Subtract(ts2).Duration();
//结果
dateDiff = ts.Hours.ToString() + "小时" + ts.Minutes.ToString() + "分钟" + ts.Seconds.ToString() + "秒";
this.labDownCount.Text = dateDiff;
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持得得之家。
沃梦达教程
本文标题为:C#定时每天00点00分00秒自动重启软件
猜你喜欢
- c# 模拟线性回归的示例 2023-03-14
- Oracle中for循环的使用方法 2023-07-04
- .NET CORE DI 依赖注入 2023-09-27
- Unity Shader实现模糊效果 2023-04-27
- Unity3D实现渐变颜色效果 2023-01-16
- user32.dll 函数说明小结 2022-12-26
- 在C# 8中如何使用默认接口方法详解 2023-03-29
- WPF使用DrawingContext实现绘制刻度条 2023-07-04
- 如何使用C# 捕获进程输出 2023-03-10
- C# 使用Aspose.Cells 导出Excel的步骤及问题记录 2023-05-16