本帖最后由 henjiandan 于 2010-08-27 01:22:17 编辑

解决方案 »

  1.   

    使用WMI类库来控制吧 WMI就是专干这些事情的
      

  2.   

     System.ServiceProcess.ServiceController serviceController = new System.ServiceProcess.ServiceController();
                serviceController.ServiceName = "MSSQLServer";
                serviceController.Start();
      

  3.   

    http://kamiff.javaeye.com/blog/507129还不够用么?
      

  4.   

    用 ServiceInstaller 和 ServiceProcessInstaller 啦.
    3个设施构成windows服务体系, SCM(Service Control Manager) 是操作系统的一个部分:服务:  逻辑执行者, 向 SCM 发送服务自己的状态信息
    服务配置程序: 服务的安装, 卸载修改, 和检索
    服务控制程序: 服务的启动和停止(向 SCM 发送启动停止指令的).在 .net 里边, 各个类都在 System.ServiceProcess 名字空间下的几个类中.
      

  5.   

    执行.bat文件来net start Cashe(服务名)net stop Cashe(服务名)
      

  6.   

    windows服务安装部署ServiceInstaller 和 ServiceProcessInstaller 
    ServiceController sc = new ServiceController("");
     if (sc.Status == ServiceControllerStatus.Running)
      {
      sc.Stop();
      sc.WaitForStatus(ServiceControllerStatus.Stopped); //等待服务停止
      if (sc.Status == ServiceControllerStatus.Stopped)
      {
      sc.Start();
      }
      }