使用ServiceController组件控制计算机服务
实现效果:
知识运用:
ServiceController组件的MachineName属性 //获取或设置服务所驻留的计算机名称
public string MachineName{get;set;} //属性值:与此ServiceController实例关联的服务的计算机名称
ServiceName属性 //获取或设置对此实例引用的服务进行标识的名称
public string ServiceName{get;set;}
Status属性 //获取由此实例引用的服务的状态
public ServiceControllerStatus Status {get;} //枚举值之一
DisplayName属性 //获取或设置服务的友好名称
public string DisplayName { get;set; }
CanStop属性 //指示服务在启动后是否可以停止
public bool CanStop { get; }
Start Stop方法
实现代码:
//启动服务
private void btn_start_Click(object sender, EventArgs e)
{
serviceController1.MachineName=".";
serviceController1.ServiceName="wuauserv";
if (serviceController1.Status == ServiceControllerStatus.Running)
{
MessageBox.Show(
serviceController1.DisplayName+"服务正在运行");
Application.Exit();
}
else
{
serviceController1.Start();
MessageBox.Show(
serviceController1.DisplayName+"服务启动成功");
btn_start.Enabled = false;
Application.Exit();
}
}
//判断状态
private void btn_status_Click(object sender, EventArgs e)
{
try
{
serviceController1.MachineName = ".";
serviceController1.ServiceName = "wuauserv";
if (serviceController1.Status == ServiceControllerStatus.Running)
{
MessageBox.Show(serviceController1.DisplayName + "服务正在运行");
btn_stop.Enabled = true;
btn_status.Enabled = false;
}
else
{
MessageBox.Show(serviceController1.DisplayName + "服务已经停止");
btn_start.Enabled = true;
btn_status.Enabled = false;
}
}
catch (Exception ee)
{ MessageBox.Show(ee.Message); }
}
//停止服务
private void btn_stop_Click(object sender, EventArgs e)
{
try
{
serviceController1.MachineName = ".";
serviceController1.ServiceName = "wuauserv";
if (serviceController1.CanStop)
{
serviceController1.Stop();
MessageBox.Show(serviceController1.DisplayName+"服务已经停止");
Application.Exit();
}
else
{
MessageBox.Show("服务不可以停止");
Application.Exit();
}
}
catch (Exception ee)
{ MessageBox.Show(ee.Message); }
}
使用ServiceController组件控制计算机服务的更多相关文章
- ServiceController组件控制计算机服务
private void Form1_Load(object sender, EventArgs e) { //下面的示例使用 ServiceController 类检查IIS服务是否已停止.如果该服 ...
- Form开发中组件控制的几个常用方法
转自:http://oracleseeker.com/2009/09/01/graphical_component_control_in_oracle_ebs_form/ 在Oracle EBS 的F ...
- vue+vux 父组件控制子组件弹层
知识点用到了vue父子组件之间的传值,以及使用watch和v-model控制vux中XDialog组件. 需要注意的问题: 1.父组件向子组件传值使用的是props(单向传值),子组件创建props, ...
- redux和react-redux做简单组件控制
这次我们用两种方式实现以下要求 1.三个组件 2.第一个组件有两个按钮 分别控制第二和第三个组件年龄和姓名的改变 3第二个组件展示姓名,第三个组件展示年龄 用到哪些插件 store redux 一 ...
- 用switch组件控制一个元素的显示和隐藏状态
微信小程序开发(交流QQ群:604788754) WXML: <view class="body-view"> <switch bindchange=" ...
- vue-lazy-render: 延迟渲染大组件,增强页面切换流畅度
最近用element来做项目,在开发的过程中,突然发现页面的操作和切换在数据量大的时候相当卡,后来提了个issue,在furybean解答后才知道,我每个单元格都加了tooltip,会生成大量的节点, ...
- [UE4]自定义MovementComponent组件
自定义Movement组件 目的:实现自定义轨迹如抛物线,线性,定点等运动方式,作为组件控制绑定对象的运动. 基类:UMovementComponent 过程: 1.创建UCustomMovement ...
- React学习(一)父子组件通讯
React父子组件之间通讯,利用props和state完成,首先React是单向数据流,父组件可以向子组件传递props: 实现父子组件双向数据流整体的思路是: 1,父组件可以向子组件传递props, ...
- vue组件(Vue+webpack项目实战系列之三)
组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.特别对于大型应用开发来说,尽量组件化,并且先造好轮子库,不要重复去写组件,这会显著提升项目 ...
随机推荐
- Linux下使用sendEmail发送带附件的邮件(转载)
转载:http://www.ttlsa.com/linux/use-sendemail-send-file/ sendEmail是一个轻量级,命令行的SMTP邮件客户端.如果你需要使用命令行发送邮件, ...
- Git查询
Git查询 查询分支 git branch # 查询本地分支 git branch -a # 查询所有分支 $ git branch -a * master remotes/origin/HEAD - ...
- python列表逆序三种方法
栗子: # 题目:将一个数组逆序输出. # # 程序分析:用第一个与最后一个交换. import random list =[random.randint(0,100) for _ in range( ...
- Spring IOC 的源码分析
刚学习Spring的时候,印象最深的就是 DispatcherServlet,所谓的中央调度器,我也尝试从这个万能胶这里找到入口 configureAndRefreshWebApplicationCo ...
- c#字符串字面量
分为两种: 1 常规字符串字面量 2逐字字面量字符串:以@字符为前缀.注意:注意逐字字面量唯一例外的是相邻的双引号组,它们被解释为单个双引号字符.
- High waits on control file sequential read
High waits on control file sequential read (文档 ID 2277867.1) In case we run into an issue where cont ...
- Unbuntu 自动重启MySQL
上个月,通过Unbuntu搭建了WordPress,一切运行良好. UBUNTU搭建WORDPRESS-MYSQL-APACHE 但是,最近几天,不知道啥情况,MySQL偶尔会出现Stop:影响了bl ...
- SSM Spring SpringMVC Mybatis框架整合Java配置完整版
以前用着SSH都是老师给配好的,自己直接改就可以.但是公司主流还是SSM,就自己研究了一下Java版本的配置.网上大多是基于xnl的配置,但是越往后越新的项目都开始基于JavaConfig配置了,这也 ...
- dede用户登录时,跳转到提示页时报404错误
做了一个项目,本地运行,用的是Apache服务器,一切正常. 可是当我把项目放到VPS中运行时,每当输入用户名登录时,调转到"成功登录,3秒钟后转向网站主页"的提示页面时,页面的顶 ...
- rabbitmq 不发送ack消息如何处理:rabbitmq可靠发送的自动重试机制
转载地址:http://www.jianshu.com/p/6579e48d18ae http://www.jianshu.com/p/4112d78a8753 接这篇 在上文中,主要实现了可靠模式的 ...