Sleep is a tiny windows program concerned with only one task: to shutdown your computer after a desired time.
It works kind of like the sleep timer of a radio or a tv. Even though this program was made many years ago (written in CPP) its user interface is well designed and simple.

 download - executable (zipped)
Sleep_setup_v1.2.exe - installer


Just unzip and start Sleep.exe or download and start the installer.


Due to laziness I just past the content of the About-Text here:
Sleep v1.2


This program is designed to turn off your PC after a period of time.


This program is Freeware...
You may copy and use it as much as you want
but you are not allowed to sell or modify it
without prior permission.


Well, there is no warranty.


Start the program and you should see a Clock with
two up/down Buttons on the left. If you see the colon
blinking it means you see the clock as HH:MM and no
action will be taken.

While you push the "UP"-Button the delay until shutdown
will increase by minutes... you will then see the timeout
as MM:SS (without a blinking colon)
If you feel you want to cancel the timeout simply push
the "DOWN"-Button until you see the clock again. (You could
also exit the program of course)

When the timeout is triggered an optional extra timeout will start to give programs the chance
to close properly before they will be forced to (see --close-timeout)
In that case you will see a colon on the left while the number is the timeout in seconds.

If you do not want to shutdown but let your system activate the standby-mode
simply use the context-menu (right-mouse click) or use one of the commands (see below).


By default the system will be turned off.
But you may add command line parameters to change this behavior.
(You could create a link and add mentioned commands next to the program name)

--execdir <directoryname>
(the directory name where the file should be executed)

--execfile <filename>
(the executable without parameters)

--execparam <parameters>
(the parameters for the executable)

--cmd <command>
(a command line, will be passed to cmd.exe or 

--terminate <Yes/No>
(if true, sleep.exe will terminate itself when done - default: Yes)

--timeout <seconds>
(initial timeout)

--action <"" | "logoff" | "reboot" | "shutdown" | "standby" | "hibernate">
(defaults to shutdown if no executable is given, none otherwise)

--shutdown-reason <reason-code>
(a reason-code passed to the shutdown-function)

--close-windows <Yes/No>
(when action=logoff, reboot or shutdown windows might receive a close command first)
--close-timeout <seconds>
(on the end of this timeout the actual action will be triggered - default: 60)

--force <Yes/No>
(if true, windows will be forced to be closed even though a document might be open - default: Yes)

--taskbar <Yes/No>
(if true, a taskbar button will be visible - default: Yes)

--tray <Yes/No>
(if true, a tray-icon will be visible (next to your clock) - default: No)

--top <Yes/No>
(if true, the window will be top-most, above all normal windows - default: Yes)

--x <x>
(the initial x-location of the window, if negativ relativ to screen-right - default: -5)

--y <y>
(the initial y-location of the window, if negativ relativ to screen-bottom - default: 5)

--alpha <0..100>
(the alpha [transparency] value for the window, available in win2000+  - default: 100)

--priority <"normal" | "idle" | "high" | "realtime">
(the process priority - default: normal)

You may pass parameters like above --<paramname> <paramvalue> or -<paramname>=<paramvalue>

Sleep.exe --timeout 120 -action=hibernate -force=yes
Sleep.exe --action shutdown
Sleep.exe --cmd "shutdown /s"
Sleep.exe --execfile "cmd.exe" --execparam "/C shutdown /s"

(the last three examples will do almost the same, see shutdown /? for more information.)