当前位置:  编程技术>.net/c#/asp.net

C#启动和停止windows服务的实例代码

    来源: 互联网  发布时间:2014-10-22

    本文导语:  代码如下:        function showLoading(desc) {            $("body").append(" " + desc + "");            //alert($("head").html());              $.openPopupLayer({                name: "processing",                width: 500,  ...

代码如下:

 
      function showLoading(desc) { 
          $("body").append("
"); 
          //alert($("head").html());   
          $.openPopupLayer({ 
              name: "processing", 
              width: 500, 
              target: "processingdiv"
          }); 
      } 
      function hideLoading() { 
          $.closePopupLayer('processing'); 
          $("#processingdiv").remove(); 
      }   
  function changeShowStatus(){ 
      $.post("Ajax/ShowHandler.ashx", { "action": "ChangeStatusShow" }, function (data) { 
          $("#spnServerStatus").text(data); 
          hideLoading(); 
      }); 
  } 
  var isValidServerStatus = function (data) { 
      if (data == "run") { 
          $("#serverStatus").text("停止").css("color", "red"); 
          changeShowStatus(); 
          //setTimeout(changeShowStatus, 6000); 
      } 
      else if (data == "end") { 
          $("#serverStatus").text("启动").css("color", "green"); 
          changeShowStatus(); 
          //setTimeout(changeShowStatus, 6000); 
      } 
      else if (data == "NoNormalEnd") { 
          $("#serverStatus").text("启动").css("color", "green"); 
          changeShowStatus(); 
      } 
      else if (data == "empty") { 
          alert('服务不存在!'); 
      } 
      else if (data == "startfail") { 
          alert('启动失败!'); 
          $("#serverStatus").text("启动").css("color", "green"); 
          changeShowStatus(); 
      } 
      else if (data == "stopfail") { 
          alert("停止失败!"); 
          $("#serverStatus").text("停止").css("color", "red"); 
          changeShowStatus(); 
      } 
      else { 
          alert('操作失败!' + data); 
          window.location.reload(); 
      } 
  } 
  $(function () { 
      $("#serverStatus").click(function () { 
          var txt = $("#serverStatus").text(); 
          if (txt == "停止") { 
              showLoading("服务正在停止......"); 
              $("#spnServerStatus").text("正在停止..."); 
              $.post("Ajax/ServerHandler.ashx", { "action": "stop" }, isValidServerStatus); 
          } 
          else if (txt == "启动") { 
              showLoading("服务正在启动......"); 
              $("#spnServerStatus").text("正在启动..."); 
              $.post("Ajax/ServerHandler.ashx", { "action": "start" }, isValidServerStatus); 
          } 
      }); 
  }); 
 

一般处理程序如下:
代码如下:

public class ServerHandler : IHttpHandler 
  { 
      public void ProcessRequest(HttpContext context) 
      { 
          context.Response.ContentType = "text/plain"; 
          string action = context.Request["action"]; 
          string serverName = QuarrysClass.WindowsServerName; 
          EnumServiceStatus status = CommonClass.GetServiceStatus(serverName); 
          if (string.IsNullOrEmpty(serverName)) 
          { 
              context.Response.Write("empty"); 
          } 
          if (action == "start") 
          { 
              byte[] ver = new byte[1024]; 

              try
              { 
                  //开启服务    

                          if (CommonClass.StartWindowsService(serverName)) 
                          { 
                              context.Response.Write("run"); 
                          } 
                          else
                          { 
                              context.Response.Write("startfail"); 
                          } 
              } 
              catch (Exception ex) 
              { 
                  context.Response.Write("提示:"+ex.Message); 
              } 
          } 
          else if (action == "stop") //停止服务 
          { 
              try
              { 
                      if (CommonClass.StopWindowsService(serverName)) 
                      { 
                          //Thread.Sleep(6000*3); 
                          context.Response.Write("end"); 
                      } 
                      else
                      { 
                          context.Response.Write("stopfail"); 
                      } 
              } 
              catch (Exception ex) 
              { 
                  if (ex.Message == "超时时间已到而操作尚未完成。") 
                  { 
                      context.Response.Write("提示:" + ex.Message); 
                  } 
                  else
                  { 
                      context.Response.Write("NoNormalEnd"); 
                  } 
              } 
          } 
      } 

      public bool IsReusable 
      { 
          get
          { 
              return false; 
          } 
      } 
  }  

    
 
 

您可能感兴趣的文章:

  • c# 启动和停止windows服务
  • 设置C#窗体程序只能启动一次
  • c# 开机启动项实例代码
  • 基于C#实现Windows服务状态启动和停止服务的方法
  • c# 开机启动项的小例子
  • C#窗体程序仅允许启动一次的解决方法
  • C#启动windows服务方法的相关问题分析
  • c#判断数据库服务器是否启动
  • c#使用process.start启动程序报错解决方法
  • c#判断数据库服务器是否已经启动的方法
  • c#启动EXE文件的方法实例
  • C#启动外部程序的几种常用方法汇总
  • C#添加注册表启动项的实例代码
  • 用C#实现启动另一程序的方法实例
  • C# 禁止应用程序多次启动的实例
  • C#代码设置开机启动示例
  • 通过C#调用cmd来修改服务启动类型
  • 如何在Linux上实现同时只能启动一个实例的程序?
  • Linux操作系统下Oracle数据库多实例启动方式及修改内存
  • Linux下设置Oracle 10g 服务以及实例自动启动
  • C++内核对象封装单实例启动程序的类
  • gearman的安装启动及python API使用实例
  • Linux As4单实例Oracle系统启动/关闭脚本
  • centos/rhel下实现nginx自启动脚本实例
  • Android中实现开机自动启动服务(service)实例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Mysql服务器登陆,启动,停止等基本操作命令介绍(Linux/Centos环境)
  • 免安转MySQL服务的启动与停止方法
  • 关于ssh连远程系统,启动服务后,客户端一旦关闭服务自动停止的问题,解决立即结贴
  • 如何启动/停止linux下的Telnet、FTP服务?
  • 弱弱的问: evolution 如何停止自动启动
  • 到sendmail停止了,不能启动!
  • 如何实现用命令启动或停止程序
  • 我的linux系统启动到一半停止了,如何恢复?
  • linux停止和查看启动服务的命令使用方法
  • 如何在linux shell 下启动/停止samba共享服务,如何手动配置?
  • ssh 下(root) 怎么停止和启动 apache ?(什么命令)
  • linux 下面如何把一个安装的工具注册成服务的方式启动和停止呢
  • 怎么手工启动和停止sco unix 的服务,另外怎么看服务所占的端口号
  • oracle服务启动与停止经验总结
  • mdadm 创建的软raid 停止后不能重新启动
  • sql server启动与停止方法
  • 如何控制自己编写的应用程序的启动和停止?
  • 我装了red hat linux 9.0 , 启动时太慢了, 请问应该停止什么服务。我安装时, 选择了个人桌面版
  • Ubuntu下启动、停止、重启MySQL,查看错误日志命令大全
  • 突然断电后我的Linux 服务器启动不起来了,出现如下提示:然后就停止不动了!谁能帮帮我!!!
  • svn服务器启动和svn服务器重启、停止等操作脚本分享
  • Windows 7 下 IE10启动很慢,如何更改设置让它启动变快
  • 各位大虾,请问怎样在启动菜单中指定由硬盘启动(象EASYBOOT,JO.SYS..启动时指定由硬盘启动)?
  • 红帽RHEL下面设置docker服务自动启动
  • 我的LINUX为什么不能选择启动,只能用启动盘启动
  • Windows7自带防火墙设置:启动,关闭及高级设置
  • emacs不启动X的界面,启动在终端里面呢?(希望他启动x界面)
  • Ubuntu程序开机自动启动设置(服务和自动运行配置文件)的几种方法
  • 在我启动linux设成Gnome图片模式启动,如果想启动字符模式,应怎样把级别5改为3吗,教我改法
  • 隐藏andriod 应用app启动图标的几种方法
  • linux 服务器启动时,机子启动就启动下面的这行命令


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3