实现注销 关机 重启计算机
Posted feiyucha
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实现注销 关机 重启计算机相关的知识,希望对你有一定的参考价值。
实现效果:
知识运用:
方案1:
ExitWindowsEx函数 //主要用来退出Windows操作系统 并用特定的选项重新启动
uFlags:要执行的操作 dwReserved:保留值 一般为0
方案2:
调用DOS命令 需使用Process类 (常用属性)
(常用方法)
实现代码:
[DllImport("user32.dll", EntryPoint = "ExitWindowsEx", CharSet = CharSet.Ansi)] private static extern int ExitWindowsEx(int uFlags,int dwReserved); private void button1_Click(object sender, EventArgs e) { ExitWindowsEx(0,0); //注销 } private void button2_Click(object sender, EventArgs e) { System.Diagnostics.Process myProcess = new System.Diagnostics.Process(); myProcess.StartInfo.FileName = "cmd.exe"; //启动CMD命令 myProcess.StartInfo.UseShellExecute = false; //是否使用系统外壳程序启动进程 myProcess.StartInfo.RedirectStandardOutput = true; //是否写入流 myProcess.StartInfo.RedirectStandardInput = true; //是否从流中读取 myProcess.StartInfo.RedirectStandardError = true; //是否将错误信息写入流 myProcess.StartInfo.CreateNoWindow = true; //是否在新窗口中启动进程 myProcess.Start(); //启动进程 myProcess.StandardInput.WriteLine("shutdonw -s -t 0"); //执行关机命令 } private void button3_Click(object sender, EventArgs e) { System.Diagnostics.Process myProcess = new System.Diagnostics.Process(); myProcess.StartInfo.FileName = "cmd.exe"; //启动CMD命令 myProcess.StartInfo.UseShellExecute = false; //是否使用系统外壳程序启动进程 myProcess.StartInfo.RedirectStandardOutput = true; //是否写入流 myProcess.StartInfo.RedirectStandardInput = true; //是否从流中读取 myProcess.StartInfo.RedirectStandardError = true; //是否将错误信息写入流 myProcess.StartInfo.CreateNoWindow = true; //是否在新窗口中启动进程 myProcess.Start(); //启动进程 myProcess.StandardInput.WriteLine("shutdonw -r -t 0"); //执行重启命令 }
以上是关于实现注销 关机 重启计算机的主要内容,如果未能解决你的问题,请参考以下文章