delphi 中是这样的  把它改为vb就可以了
var
hToken :thandle;
tkp,ptkpTOKEN_PRIVILEGES;
i:dword;
/////////
OpenProcessToken(GetCurrentProcess(),
        TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken);
tkp.PrivilegeCount := 1;
LookupPrivilegeValue(Nil,'SeShutdownPrivilege',
       tkp.Privileges[0].Luid);tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken,FALSE,tkp,sizeof(ptkp),ptkp,i);
CloseHandle(hToken);
ExitWindowsEx(EWX_reboot, 0);