C#窗口实现定时关机系统
- 作者: 青红造了个白47552127
- 来源: 51数据库
- 2021-08-06
本文实例为大家分享了c#窗口实现定时关机系统的具体代码,供大家参考,具体内容如下
看一下运行之后的效果图

看代码
using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.linq;
using system.text;
using system.windows.forms;
namespace shutdonewindows
{
public partial class shutdone : form
{
public shutdone()
{
initializecomponent();
}
private void menuitemexit_click(object sender, eventargs e)
{
application.exit();
}
private void shutdone_load(object sender, eventargs e)
{
this.timer1.start();
datetime dt = system.datetime.now;
string dt = system.datetime.now.tostring();
txtdatatime.text = dt;
}
private void btnhide_click(object sender, eventargs e)
{
this.hide();
this.notifyicon1.visible = true;
}
private void notifyicon1_mousedoubleclick(object sender, mouseeventargs e)
{
this.visible = true;
this.windowstate = formwindowstate.normal;
this.notifyicon1.visible = false;
}
private void btnshutdone_click(object sender, eventargs e)
{
system.diagnostics.process.start("cmd.exe", "/cshutdown -s -t 0");
}
private void btnrelogin_click(object sender, eventargs e)
{
system.diagnostics.process.start("cmd.exe", "/logoff 0");
}
private void btnreboot_click(object sender, eventargs e)
{
system.diagnostics.process.start("cmd.exe", "/shutdown -r 0");
}
private void timer1_tick(object sender, eventargs e)
{
datetime objdatetime = system.datetime.now;
string cdata = objdatetime.tolongdatestring();
string ctime = objdatetime.tolongtimestring();
this.txtdatatime.text = cdata + "" + ctime;
if (this.chkstrat.checked == true)
{
int y = this.dtpcurrentdate.value.year;
int m = this.dtpcurrentdate.value.month;
int d = this.dtpcurrentdate.value.day;
int h = this.dtpcurrenttime.value.hour;
int min = this.dtpcurrenttime.value.minute;
int s = this.dtpcurrenttime.value.second;
objdatetime = new datetime(y, m, d, h, min, s);
system.timespan remain = objdatetime - system.datetime.now;
double time = remain.totalseconds;
if (time < 0)
{
this.chkstrat.checked = false;
messagebox.show("设定的定时时间必须大于当前时间");
}
else
{
if (time < 60 && this.rbtnoneminute.checked == true)
{
awokeform aw = new awokeform();
this.timer1.stop();
this.hide();
aw.show();
}
if (time < 0 && this.rbtnnone.checked == true)
{
system.diagnostics.process.start("cmd.exe", "/cshutdown -s -t 0");
}
}
}
}
private void chkstrat_checkedchanged(object sender, eventargs e)
{
}
private void rbtnoneminute_checkedchanged(object sender, eventargs e)
{
}
private void rbtnnone_checkedchanged(object sender, eventargs e)
{
}
}
}
窗口提醒的代码!
using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.linq;
using system.text;
using system.windows.forms;
namespace shutdonewindows
{
public partial class awokeform : form
{
public awokeform()
{
initializecomponent();
}
private void btncancel_click(object sender, eventargs e)
{
timer1.stop();
this.close();
}
private void awokeform_load(object sender, eventargs e)
{
this.timer1.start();
this.lblmessage.text = "距离当前关机还有" +60+ "秒";
}
int max = 60;
private void timer1_tick(object sender, eventargs e)
{
this.max = max - 1;
if (this.max == 0)
{
system.diagnostics.process.start("cmd.exe", "/cshutdown -s -t 0");
this.timer1.stop();
}
else
{
this.lblmessage.text = "距离当前关机还有" + this.max.tostring() + "秒";
}
}
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
推荐阅读
- C#通过fleck实现wss协议的WebSocket多人Web实时聊天(附源码)
- 团队城市未满足要求:MSBuildTools12.0_x86_Path 存在
- 使用 MSBuild.exe 在发布模式下构建 C# 解决方案
- 当我发布 Web 应用程序时,AfterPublish 脚本不运行
- 构建时 T4 转换的产品仅在下一个构建中使用
- ASP.NET Core Application (.NET Framework) for Windows x64 only error in project.assets.json
- 新的 .csproj 格式 - 如何将整个目录指定为“链接文件"到子目录?
- 如何将条件编译符号(DefineConstants)传递给 msbuild
- MSBuild 支持 Visual Studio 2017 RTM 中的 T4 模板
- NuGet 包还原找不到包,没有源
热点文章
团队城市未满足要求:MSBuildTools12.0_x86_Path 存在
0
使用 MSBuild.exe 在发布模式下构建 C# 解决方案
0
当我发布 Web 应用程序时,AfterPublish 脚本不运行
0
构建时 T4 转换的产品仅在下一个构建中使用
0
ASP.NET Core Application (.NET Framework) for Windows x64 only error in project.assets.json
0
新的 .csproj 格式 - 如何将整个目录指定为“链接文件"到子目录?
0
如何将条件编译符号(DefineConstants)传递给 msbuild
0
MSBuild 支持 Visual Studio 2017 RTM 中的 T4 模板
0
NuGet 包还原找不到包,没有源
0
使用 C# 6.0 功能运行 TFS 构建
0
