如果是在Win2000并以Administrator登录,用代码退出:
ExitWindowsEx(EWX_SHUTDOWN,0);或者
ExitWindowsEx(EWX_POWEROFF,0);//这个需要系统支持power-off
—————————————————————————————————
MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
             毁誉由人,望天上云卷云舒,聚散任风。';
if Not Assigned(I) then
  I := TI.Create(Nil);
I.Maxim := MaximStr;
I.Explain := '假如上述代码中出现“OA”等字样,删除它们';
I.Desire := '加不加分随你';
—————————————————————————————————
       

解决方案 »

  1.   

    必须先调整权限
    function ShutdownWindow: Boolean;
    var
      App: THANDLE;
      Num: DWORD;
      Tok: TOKEN_PRIVILEGES;
    begin
      OpenProcessToken(
        GetCurrentProcess,
        TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,
        App
      );
      Tok.PrivilegeCount:=1;
      LookupPrivilegeValue(
        nil,
        'SeShutdownPrivilege',
        Tok.Privileges[0].Luid
      );
      Tok.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;
      AdjustTokenPrivileges(
        App,
        False,
        Tok,
        SizeOf(Tok),
        Tok,
        Num
      );
      Result:=ExitWindowsEx(EWX_SHUTDOWN, 0);
    end;
      

  2.   

    ExitWindowsEx(EWX_SHUTDOWN,0);或者
    ExitWindowsEx(EWX_POWEROFF,0);