ExitWindows(EW_RebootSystem,0);
  Note: user need close win2k privilege!

解决方案 »

  1.   

    我知道,不过现在找不到
    你可以看看MSDN中的VB的例子
      

  2.   

    function ShutDownSystem: Boolean; //关闭计算机
    var
      VerInfo: TOSVersionInfo;
      hToken: THANDLE;
      tkp: TOKEN_PRIVILEGES;
      Nothing: Cardinal;
    begin
      if IsWinNT then begin
        VerInfo.dwOSVersionInfoSize := SizeOf(VerInfo);
        GetVersionEx(VerInfo);
        if VerInfo.dwPlatformId = VER_PLATFORM_WIN32_NT then begin
          OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,
            hToken);
          LookupPrivilegeValue(nil, 'SeShutdownPrivilege', tkp.Privileges[0].Luid);
          tkp.PrivilegeCount := 1;
          tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
          AdjustTokenPrivileges(hToken, FALSE, tkp, 0, nil, Nothing);
        end;
        ExitWindowsEx(EWX_FORCE + EWX_SHUTDOWN + EWX_POWEROFF, 0);
      end
      else
        ExitWindowsEx(EWX_FORCE + EWX_SHUTDOWN + EWX_POWEROFF, 0);
      Result := True;
    end;重新启动 什么的就不用我再说了吧
      

  3.   

    ExitWindowEx(EWX_ShutDown,0);
    //关闭计算机