C#Windows服务:一些方法(启动、停止等)
2016-04-06 11:58
651 查看
/// <summary> /// 判断是否安装了某个服务 /// </summary> /// <param name="serviceName"></param> /// <returns></returns> public static bool ISWindowsServiceInstalled(string serviceName) { try { ServiceController[] services = ServiceController.GetServices(); foreach (ServiceController service in services) { if (service.ServiceName == serviceName) { return true; } } return false; } catch { return false; } } /// <summary> /// 启动某个服务 /// </summary> /// <param name="serviceName"></param> public static void StartService(string serviceName) { try { ServiceController[] services = ServiceController.GetServices(); foreach (ServiceController service in services) { if (service.ServiceName == serviceName) { service.Start(); service.WaitForStatus(ServiceControllerStatus.Running, new TimeSpan(0, 0, 30)); } } } catch { } } /// <summary> /// 停止某个服务 /// </summary> /// <param name="serviceName"></param> public static void StopService(string serviceName) { try { ServiceController[] services = ServiceController.GetServices(); foreach (ServiceController service in services) { if (service.ServiceName == serviceName) { service.Stop(); service.WaitForStatus(ServiceControllerStatus.Running, new TimeSpan(0, 0, 30)); } } } catch { } } /// <summary> /// 判断某个服务是否启动 /// </summary> /// <param name="serviceName"></param>
public static bool ISStart(string serviceName) { bool result = true; try { ServiceController[] services = ServiceController.GetServices(); foreach (ServiceController service in services) { if (service.ServiceName == serviceName) { if ((service.Status == ServiceControllerStatus.Stopped) || (service.Status == ServiceControllerStatus.StopPending)) { result = false; } } } } catch { } return result; }
相关文章推荐
- C#实例之从题库总随机抽取题号
- C#格式转换注意事项
- C#中数组、ArrayList和List三者的区别
- C# Lambda表达式
- C#操作SharePoint文档库文档
- C# Math类简介
- C# 浅拷贝与深拷贝区别
- C# 读写 Web.config
- C# word 编写图标和导出文字以及表格
- 详解C#切换窗口
- 实现一个所有任务都是按各自自定义的时间间隔周期性执行的线程池
- C#在线预览文档(word,excel,pdf,txt,png)
- C# Excel操作类
- C#接口的使用场合,接口应用
- VS2010-C#应用开发问题记录
- C#正则匹配RegexOptions选项的组合使用方法
- C#如何对一个类添加拓展方法
- 【C#进阶系列】20 异常和状态管理
- C#Base64编码
- C# winform程序防止前台卡死