各位:
   如题!还望各位不吝赐教!

解决方案 »

  1.   

    win2000下
    WinExec('net start MSSQLSERVER', SW_HIDE);
    WinExec('net stop MSSQLSERVER', SW_HIDE);  
    win98下
    没试过
      

  2.   

    program Project1;uses
      Windows,
      WinSvc;procedure RunMSSQLSERVICE;
      var
        SrvHandle: SC_HANDLE;
        Service_Status: _SERVICE_STATUS;
        SrvStatus : Integer;
      begin
        try
          SrvHandle := OpenSCManager('', SERVICES_ACTIVE_DATABASE, SC_MANAGER_ALL_ACCESS);
          SrvHandle := OpenService(SrvHandle, PChar('MSSQLServer'), SERVICE_QUERY_STATUS or SERVICE_START);
          if  QueryServiceStatus(SrvHandle, Service_Status)
          then
          begin
             SrvStatus := Service_Status.dwCurrentState;
             if  SrvStatus = SERVICE_STOPPED
             then
             begin
                Winexec('scm -action 1 -slient 1 -service mssqlserver ',sw_Normal);
             end;
          end;
        except
        end;
      end;
    begin
      RunMSSQLSERVICE;
    end.
      

  3.   

    实在看不明白!
    Winexec('scm -action 1 -slient 1 -service mssqlserver ',sw_Normal);
    能启动,但是在暂停的时候就不好用了
    我手动设置暂停,用此命令则无法启动服务