To Logoff, Restart or Shutdown Windows using Batch you can Simply execute shutdown with the needed parameters. To execute the shutdown command you need the sufficient user privileges.
List of Parameters
-l Logs off the current user, this is also the default. -m ComputerName takes precedence.
-s Shuts down the local computer.
-r Reboots after shutdown.
-a Aborts shutdown. Ignores other parameters, except -l and ComputerName. You can only use -a during the time-out period.
-f Forces running applications to close. Note that if you are on a remote machine without using -f your session maybe closed but a hanging program blocks the Shutdown
-m [ \\ ComputerName ] Specifies the computer that you want to shut down.
-t xx Sets the timer for system shutdown in xx seconds. The default is 20 seconds.
-c ” message “ Specifies a message to be displayed in the Message area of the System Shutdown window. You can use a maximum of 127 characters. You must enclose the message in quotation marks.
-d [ u ][ p ] : xx : yy Lists the reason code for the shutdown. Reason Codes (u=Indicates a user code), (p=Indicates a planned shutdown cod), (xx=Specifies the major reason code (0-255)), (yy=Specifies the minor reason code (0-65536)
/? Displays help at the command prompt.
FOR MORE INFORMATIONS AND DETAILS TAKE A LOOK AT THE MSDN.
To reboot the pc in VBScript you can use the following snippet.
Set WSHShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "C:\WINDOWS\system32\shutdown.exe -r -t 0"
To get computer name in Java you can use the following snippet.