In some circumstances, you may need to allow your program to restart or shut down a computer that uses a Windows Operating System. This article will teach you how to shut down and restart a computer using C#.
To begin with, you will need to add the namespace below:
using System.Diagnostics;
The function below is used to restart or shut down a windows operating system. It calls the shutdown windows command by using the Process.Start
function from the System.Diagnostics
namespace.
void ShutdownRestart(bool restart = false) { if (restart) { Process.Start("ShutDown", "/r"); // To restart a windows OS } else { Process.Start("ShutDown", "/s"); // To shutdown a windows OS } }
Note that the shutdown.exe file is located in the location below:
%windir%\System32\shutdown
Now you can call the function above by passing the restart argument to get the desired action:
public static void Main(String[] args) { ShutdownRestart(true); }
Timed shutdown allows you to run the shutdown command after a specific time. You can use timed shutdown by adding the time when calling the command:
Process.Start("shutdown","/s /t 60");
The Windows Operating System will be shut down after 1 minute in the code above.
The shutdown command can be used to logoff a logged-in user by simply passing the argument as shown below:
Process.Start("shutdown","/l");
Happy coding!