ServiceController1
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
using System.Collections; ///System.ServiceProcess.dll
using System.ServiceProcess;
//serviceController1 控件 namespace TEST
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private Hashtable ht = new Hashtable();
private string name;
private void Form1_Load(object sender, EventArgs e)
{
LoadServices();
} private void LoadServices()
{
ht.Clear();
this.lvServices.Items.Clear();
ServiceController[] sc = ServiceController.GetServices();
foreach (ServiceController item in sc)
{
ListViewItem lviServices = this.lvServices.Items.Add(item.DisplayName);
lviServices.SubItems.Add(item.ServiceName.ToString());
lviServices.SubItems.Add(item.Status.ToString());
lviServices.SubItems.Add(item.ServiceType.ToString());
//
ht.Add(item.DisplayName, item);
}
} private void SelectProcess()
{
if (this.lvServices.SelectedItems.Count != )
return;
name = this.lvServices.SelectedItems[].SubItems[].Text;
serviceController1 = ht[name] as ServiceController; // 如果当前状态是Stopped,就应该允许用户执行开始服务
this.btnStart.Enabled = (serviceController1.Status == ServiceControllerStatus.Stopped);
//如果当前状态不是Stopped并且系统允许停止服务,就应该允许用户执 行停止服务
this.btnStop.Enabled = (serviceController1.CanStop && (!(serviceController1.Status == ServiceControllerStatus.Stopped)));
//如果当前状态不是Paused并且系统允许暂停恢复服务,就应该允许用户执行暂停服务
this.btnPause.Enabled = (serviceController1.CanPauseAndContinue && (!(serviceController1.Status == ServiceControllerStatus.Paused)));
// 如果当前状态是Paused,就应该允许用户执行恢复服务
this.btnResume.Enabled = (serviceController1.Status == ServiceControllerStatus.Paused);
} private void btnStart_Click(object sender, EventArgs e)
{
this.serviceController1.Start();
LoadServices();
} private void btnPause_Click(object sender, EventArgs e)
{
this.serviceController1.Pause();
LoadServices();
} private void btnResume_Click(object sender, EventArgs e)
{
this.serviceController1.Continue(); ;
LoadServices();
} private void btnStop_Click(object sender, EventArgs e)
{
this.serviceController1.Stop();
LoadServices();
} private void lvServices_SelectedIndexChanged(object sender, EventArgs e)
{
SelectProcess();
}
}
}
ServiceController1的更多相关文章
- ServiceController组件控制计算机服务
private void Form1_Load(object sender, EventArgs e) { //下面的示例使用 ServiceController 类检查IIS服务是否已停止.如果该服 ...
- OpenFirewall
1.写一份json文件:将要添加防火墙例外的应用程序和端口写入到json文件中 2.打开防火墙,读取json文件添加例外 /// <summary> /// Firewall.xaml 的 ...
- C#启动或停止 计算机中“服务”
第一.要添加一个引用System.ServiceProcess 第二.要在程序中使用命名空间ServiceProcess 代码片段: using System.ServiceProcess; Serv ...
- 使用ServiceController组件控制计算机服务
实现效果: 知识运用: ServiceController组件的MachineName属性 //获取或设置服务所驻留的计算机名称 public string MachineName{get;set;} ...
- C#调用Resources.resx资源文件中的资源
使用到了.NET中的资源文件,也就是Resources.resx,于是就学会了如何调用资源文件中的资源.首先,资源文件可以从项目属性中的资源标签添加.比如,我添加一个图片,叫做aaa.png,添加入资 ...
随机推荐
- java FileWriter and FileReader
import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; public class FWFRD ...
- random circle
<!doctype html><meta charset="utf-8"><html><head><title>D3 t ...
- java 开发, jdk 1.6 官方下载地址
在oracle官方网站默认下载的jdk是最新的,目前正式版是1.8. 但有些项目要求是1.6的jdk,费了九牛二虎之力终于找到了1.6的官方版本,链接如下: http://www.oracle.com ...
- 解决微软的两个恶心问题(VS2008死机、Win2008 WAS无法启动)
1.Visual Studio 2008,在切换到Web设计界面或Html Markup界面时,过一段时间就出现假死,点击任何地方没反应,也关闭不了,只能用任务管理器结束任务. 上网查了下,应该是先装 ...
- Bootstrap 表格和按钮
一.表格 1.条纹状表格 行产生一行隔一行加单色背景效果 注:表格效果需要基于基本格式.table <table class="table table-striped"> ...
- java JDK8 学习笔记——第16章 整合数据库
第十六章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API中的接口会有数据库厂商操作,称为JDBC驱动程 ...
- angularJS自定义属性作为条件中转
<html> <head> <meta charset="utf-8"/> <title></title> </h ...
- Angular自动双向绑定值
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> ...
- JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的 开源 Java EE快速开发平台
JeeSite本身是以Spring Framework为核心容器,Spring MVC为模型视图控制器,MyBatis为数据访问层, Apache Shiro为权限授权层,Ehcahe对常用数据进行缓 ...
- 详细解读Jquery的$.get(),$.post(),$.ajax(),$.getJSON()用法
一,$.get(url,[data],[callback]) 说明:url为请求地址,data为请求数据的列表,callback为请求成功后的回调函数,该函数接受两个参数,第一个为服务器返回的数据,第 ...