C#实现windows系统重启、关机
⼀、C#实现windows系统重启、关机
实现原理,使⽤系统shutdown命令执⾏:
强制关机:
shutdown -s -f -t 0
强制重启:
shutdown -r -f -t 0
关机程序代码
C#实现代码封装:
public class ShutdownHelper
{
///<summary>
/
//到期时间
///</summary>
public DateTime End { get; set; }
public ShutdownHelper()
{
DateTime now = DateTime.Now;
DateTime end = now.Date.AddDays(1).AddSeconds(-1);
this.End = end;
}
public ShutdownHelper(DateTime time)
{
this.End = time;
}
//执⾏命令
public void Exec(string str)
{
try
{
using (Process process = new Process())
{
process.StartInfo.FileName = "";//调⽤程序
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardInput = true;//重定向标准输⼊
process.StartInfo.RedirectStandardOutput = true;//重定向标准输出
process.StartInfo.RedirectStandardError = true;//重定向标准出错
process.StartInfo.CreateNoWindow = true;//不显⽰⿊窗⼝
process.Start();//开始调⽤执⾏
process.StandardInput.WriteLine(str + "&exit");//标准输⼊str + "&exit",相等于在cmd⿊窗⼝输⼊str + "&exit"
process.StandardInput.AutoFlush = true;//刷新缓冲流,执⾏缓冲区的命令,相当于输⼊命令之后回车执⾏
process.WaitForExit();//等待退出
process.Close();//关闭进程
}
}
catch
{
}
}
//执⾏关机操作
public void Shutdown()
{
this.Exec("shutdown -s -f -t 0");
}
//执⾏重启操作
public void Restart()
{
this.Exec("shutdown -r -f -t 0");
}
//取消任务
}
⼆、关于shutdown命令详解:
C#实现控制Windows系统关机、重启和注销的⽅法:
shutdown命令的参数:
< -s:关机
< -r:关机并重启
< -l:注销当前⽤户
< -s -t 时间:设置关机倒计时
< -h:休眠
< -t 时间:设置关机倒计时。默认值是 30 秒。
< -a:取消关机
< -f:强⾏关闭应⽤程序⽽没有警告
< -m \计算机名:控制远程计算机
< -i:显⽰“远程关机”图形⽤户界⾯,但必须是Shutdown的第⼀个参数
< -c "消息内容":输⼊关机对话框中的消息内容
< -d [u][p]:xx:yy :列出系统关闭的原因代码:u 是⽤户代码,p 是⼀个计划的关闭代码,xx 是⼀个主要原因代码(⼩于 256 的正整数) ,yy 是⼀个次要原因代码(⼩于 65536 的正整数)
⽐如你的电脑要在12:00关机,可以选择“开始→运⾏”,输⼊“at 12:00 Shutdown -s",这样,到了12点电脑就会出现“系统关机”对话框,默认有30秒钟的倒计时并提⽰你保存⼯作。
如果你想以倒计时的⽅式关机,可以输⼊ “ -s -t 3600",这⾥表⽰60分钟后⾃动关机,“3600"代表60分钟。
⼀键关机:
1、⾸先在桌⾯的空⽩处单击⿏标右键,新建⼀个“快捷⽅式”。
2、在创建快捷⽅式的“命令⾏”中输⼊以下的指令:
“shutdown –s –t 0 ”。(在windows98按此输⼊“C:windowsRUNDLL32.EXE user,ExitWindows”。)
3、按着⿏标选择“下⼀步”,在快捷⽅式的名称栏中输⼊“⼀键关机”或其他⾃⼰喜欢的名称。
4、之后,你就会在桌⾯见到⼀个名为“⼀键关机”的快捷⽅式图标,在该图标上单击⿏标右键,选择“属性”,再进⼊“快捷⽅式”页,然后在“快速键⼀栏内随便按选⼀个功能键(如F1-F12)。建议⼤家最好选⼀个平时不常⽤的功能键,最后按确定退出即可。Windows系统通过⼀个名为的程序来完成关机操作(位置Windows\System32下),⼀般情况下Windows系统的关机都可以由关机程序 shutdown.e
xe来实现的,关机的时候调⽤。由此可知要阻⽌强⾏关机就是要取消对shu 使⽤C#代码实现控制Windows系统关机、重启和注销的⽅法,使⽤.NET和C#.NET,我们可以对当前PC执⾏关机,重启,注销操作,
.NET Framework中,有⼀个命名空间System.Diagnostics具有所需的类和⽅法,从当前PC上运⾏.NET应⽤程序来执⾏这些操作。⼀般使⽤System.Diagnostics.Process.Start()⽅法来启动程序。
更多:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。