Sub Main()
Dim lRet As Long
Dim Tokenhandle As Long
Dim TP As TOKEN_PRIVILEGES
Dim lui As luid
' Körs programmet tidigare
If App.PrevInstance = True Then End
' Söker användare som har privilegier på WindowsNT
lRet = OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES, Tokenhandle)
lRet = LookupPrivilegeValue(vbNullString, SE_SHUTDOWN_NAME, lui)
TP.PrivilegeCount = 1
TP.Privileges(0).Attributes = SE_PRIVILEGE_ENABLED Or _
SE_PRIVILEGE_ENABLED_BY_DEFAULT Or _
SE_PRIVILEGE_USED_FOR_ACCESS
TP.Privileges(0).pLuid = lui
' Justerar privilegier och stänger ner WindowsNT
lRet = AdjustTokenPrivileges(Tokenhandle, 0, TP, 0, vbNullString, 0)
lRet = ExitWindowsEx(EWX_SHUTDOWN, 0)
End Sub