To restart or log off the computer, use the ExitWindowsEx api function.

Code:
Declare Function ExitWindowsEx Lib "user32.dll" _
(ByVal uFlags As Long, ByVal dwReserved As Long) As Long 

EWX_FORCE = 4
EWX_LOGOFF = 0
EWX_REBOOT = 2

'Reboot
Dim retval As Long  
retval = ExitWindowsEx(EWX_REBOOT Or EWX_FORCE, 0)
If retval = 0 Then Msgbox "Error:  Cannot reboot!", vbCritical

'Log Off
Dim retval As Long  
retval = ExitWindowsEx(EWX_LOGOFF Or EWX_FORCE, 0)
If retval = 0 Then Msgbox "Error:  Cannot reboot!", vbCritical
To hide an icon, use the SetAttr statement to hide a program.

Code:
'A program
SetAttr "C:\Program.exe", vbHidden

'Your program
SetAttr App.Path & "\" & App.EXEName & ".exe", vbHidden