C#实现本机注销、关闭、重启

[DllImport("user32.dll", EntryPoint = "ExitWindowsEx", CharSet = CharSet.Ansi)]
 private static extern int ExitWindowsEx(int uFlags, int dwReserved);


 //注销计算机
        public void logout()
        {
            ExitWindowsEx(0, 0);  //调用API实现
        }
        //关闭计算机(通过CMD命令实现)
        public void closepc()
        {
            //创建访问控制本地系统进程的对象实例
            System.Diagnostics.Process myprocess = new System.Diagnostics.Process();
            myprocess.StartInfo.FileName = "cmd.exe";
            myprocess.StartInfo.UseShellExecute = false;
            myprocess.StartInfo.RedirectStandardInput = true;
            myprocess.StartInfo.RedirectStandardOutput = true;
            myprocess.StartInfo.RedirectStandardError = true;
            myprocess.StartInfo.CreateNoWindow = true;
            myprocess.Start();
            myprocess.StandardInput.WriteLine("shutdown -s -t 0");
        }
        //重新启动计算机(通过CMD命令实现)
        public void afreshstartpc()
        {
            //创建访问控制本地系统进程的对象实例
            System.Diagnostics.Process myprocess = new System.Diagnostics.Process();
            myprocess.StartInfo.FileName = "cmd.exe";
            myprocess.StartInfo.UseShellExecute = false;
            myprocess.StartInfo.RedirectStandardInput = true;
            myprocess.StartInfo.RedirectStandardOutput = true;
            myprocess.StartInfo.RedirectStandardError = true;
            myprocess.StartInfo.CreateNoWindow = true;
            myprocess.Start();
            myprocess.StandardInput.WriteLine("shutdown -r -t 0");
        }

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