zoukankan      html  css  js  c++  java
  • windows服务的停止和开启

     /// <summary>
    /// WindowsServiceManage
    /// </summary>
    public class WindowsServiceManage
    {
    /// <summary>
    /// 重启服务
    /// </summary>
    /// <param name="serviceName"></param>
    /// <returns></returns>
    public static bool RestartWindowsService(string serviceName)
    {
    bool bResult = false;
    try
    {
    try
    {
    StopWindowsService(serviceName);
    Thread.Sleep(
    1000);
    }
    catch (Exception ex)
    {
    StartWindowsService(serviceName);
    Thread.Sleep(
    1000);
    StopWindowsService(serviceName);
    Thread.Sleep(
    1000);
    Console.WriteLine(ex.Message);
    }
    try
    {
    StartWindowsService(serviceName);
    Thread.Sleep(
    1000);
    }
    catch (Exception ex) //C#启动Windows服务及关闭
    {
    StopWindowsService(serviceName);
    Thread.Sleep(
    1000);
    StartWindowsService(serviceName);
    Thread.Sleep(
    1000);
    Console.WriteLine(ex.Message);
    }
    bResult
    = true;
    }
    catch (Exception ex)
    {
    bResult
    = false;
    throw ex;
    }
    return bResult;
    }


    /// <summary>
    /// 停止服务
    /// </summary>
    /// <param name="serviceName">服务名称</param>
    /// <returns></returns>
    public static bool StopWindowsService(string serviceName)
    {
    ServiceController[] scs
    = ServiceController.GetServices();
    bool bResult = false;
    foreach (ServiceController sc in scs)
    {
    if (sc.DisplayName == serviceName)
    {
    try
    {
    sc.WaitForStatus(ServiceControllerStatus.Running,
    TimeSpan.FromSeconds(
    30));
    sc.Stop();
    bResult
    = true;
    }
    catch (Exception ex)
    {
    bResult
    = false;
    throw ex;
    }
    }
    }
    return bResult;
    }

    /// <summary>
    /// 启动服务
    /// </summary>
    /// <param name="serviceName">服务名称</param>
    /// <returns></returns>
    public static bool StartWindowsService(string serviceName)
    {
    ServiceController[] scs
    = ServiceController.GetServices();
    bool bResult = false;
    foreach (ServiceController sc in scs)
    {
    if (sc.DisplayName == serviceName)
    {
    try
    {
    sc.WaitForStatus(ServiceControllerStatus.Stopped,
    TimeSpan.FromSeconds(
    30));
    sc.Start();
    bResult
    = true;
    }
    catch (Exception ex)
    {
    bResult
    = false;
    throw ex;
    }
    }
    }
    return bResult;
    }
    }

      

  • 相关阅读:
    第五周项目4-静态成员应用
    第五周项目3-用多文件组织多个类的程序
    python的wraps函数
    python函数加括号于不加括号的区别
    socket.error: [Errno 10048]
    tensorflow的MNIST教程
    cidr地址段
    mongodb数据库的存储问题
    搭建巡风扫描器
    mongodb的数据库,集合,数据可介绍。
  • 原文地址:https://www.cnblogs.com/yannis/p/2107053.html
Copyright © 2011-2022 走看看