private void Form1_Load(object sender, EventArgs e)
{
//下面的示例使用 ServiceController 类检查IIS服务是否已停止。如果该服务已停止,此示例将启动该服务并等待服务状态设置为 Running。
//此示例使用 ServiceController 组件在本地计算机上继续 IIS 管理服务
//serviceController1.MachineName = ".";
//serviceController1.ServiceName = "IISAdmin";//IIS 服务
}
//开启IIS服务的状态
private void button1_Click(object sender, EventArgs e)
{
serviceController1.MachineName = ".";//设置此服务所在的计算机名称
serviceController1.ServiceName = "IISAdmin";//设置服务名称
if (serviceController1.Status == //判断服务状态
ServiceControllerStatus.Running)
{
MessageBox.Show(//弹出消息对话框
serviceController1.DisplayName + " 服务正在运行");
Application.Exit();//退出应用程序
}
else
{
serviceController1.Start();//启动服务
MessageBox.Show(//弹出消息对话框
serviceController1.DisplayName + " 服务已开启");
Application.Exit();//退出应用程序
} }
//判断IIS服务的状态
private void button3_Click(object sender, EventArgs e)
{
try
{
serviceController1.MachineName = ".";//设置此服务所在的计算机名称
serviceController1.ServiceName = "IISAdmin";//设置服务名称
if (serviceController1.Status == //判断服务状态
ServiceControllerStatus.Running)
{
MessageBox.Show(//弹出消息对话框
serviceController1.DisplayName + " 服务已开启");
btn_Stop.Enabled = true;//启用停止服务按钮
btn_Status.Enabled = false;//停用状态按钮 }
else
{
MessageBox.Show(//弹出消息对话框
serviceController1.DisplayName + "服务已停止");
btn_Status.Enabled = false;//停用状态按钮
btn_Start.Enabled = true;//启用开始服务按钮 }
}
catch (Exception ee)//捕获异常
{ MessageBox.Show(ee.Message); }//弹出消息对话框 } //停止IIS服务的状态
private void button2_Click(object sender, EventArgs e)
{
try
{
serviceController1.MachineName = ".";//设置此服务所在的计算机名称
serviceController1.ServiceName = "IISAdmin";//设置服务名称
if (serviceController1.CanStop)//判断是否可以停止服务
{
serviceController1.Stop();//停止服务
MessageBox.Show(//弹出消息对话框
serviceController1.DisplayName + "服务已停止");
Application.Exit();//退出应用程序
}
else
{
MessageBox.Show(//弹出消息对话框
serviceController1.DisplayName + "不可以停止");
Application.Exit();//退出应用程序
}
}
catch (Exception ee)//捕获异常
{ MessageBox.Show(ee.Message); }//弹出消息对话框
}

ServiceController组件控制计算机服务的更多相关文章

  1. 使用ServiceController组件控制计算机服务

    实现效果: 知识运用: ServiceController组件的MachineName属性 //获取或设置服务所驻留的计算机名称 public string MachineName{get;set;} ...

  2. Form开发中组件控制的几个常用方法

    转自:http://oracleseeker.com/2009/09/01/graphical_component_control_in_oracle_ebs_form/ 在Oracle EBS 的F ...

  3. vue+vux 父组件控制子组件弹层

    知识点用到了vue父子组件之间的传值,以及使用watch和v-model控制vux中XDialog组件. 需要注意的问题: 1.父组件向子组件传值使用的是props(单向传值),子组件创建props, ...

  4. redux和react-redux做简单组件控制

    这次我们用两种方式实现以下要求 1.三个组件 2.第一个组件有两个按钮 分别控制第二和第三个组件年龄和姓名的改变 3第二个组件展示姓名,第三个组件展示年龄 用到哪些插件 store  redux 一 ...

  5. 用switch组件控制一个元素的显示和隐藏状态

    微信小程序开发(交流QQ群:604788754) WXML: <view class="body-view"> <switch bindchange=" ...

  6. vue-lazy-render: 延迟渲染大组件,增强页面切换流畅度

    最近用element来做项目,在开发的过程中,突然发现页面的操作和切换在数据量大的时候相当卡,后来提了个issue,在furybean解答后才知道,我每个单元格都加了tooltip,会生成大量的节点, ...

  7. [UE4]自定义MovementComponent组件

    自定义Movement组件 目的:实现自定义轨迹如抛物线,线性,定点等运动方式,作为组件控制绑定对象的运动. 基类:UMovementComponent 过程: 1.创建UCustomMovement ...

  8. React学习(一)父子组件通讯

    React父子组件之间通讯,利用props和state完成,首先React是单向数据流,父组件可以向子组件传递props: 实现父子组件双向数据流整体的思路是: 1,父组件可以向子组件传递props, ...

  9. vue组件(Vue+webpack项目实战系列之三)

    组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.特别对于大型应用开发来说,尽量组件化,并且先造好轮子库,不要重复去写组件,这会显著提升项目 ...

随机推荐

  1. mysql datetime、date、time、timestamp区别

    我们看看这几个数据库中(mysql.oracle和sqlserver)如何表示时间 mysql数据库:它们分别是 date.datetime.time.timestamp和year.date :“yy ...

  2. Mechanism of Loading Resources

    Mechanism of Loading Resources 1. Distributed strategy 1.1. Developer guilde 1.2. Notes 2. Centraliz ...

  3. Upgrading Applications

    Upgrading Applications If you have an existing Zend Framework v2 application, and want to update it ...

  4. 常用免费快递查询API对接案例

    现在许多电商公司和ERP都会寻找比较适用的集成快递查询接口,减少对接难度,现在整理一下常用的免费快递查询接口,并附上调用案例,如果有觉得不对的地方,望能够一起沟通探讨! 一.快递查询接口 目前有提供免 ...

  5. C++第四章循环

    学习时候的点: 1.用户来控制是否继续进行的模板: char goonLoop=’y’; while(goonLoop==’y’){ //logic cout<<”输入y 来继续当前逻辑, ...

  6. 在eclipse中运行storm-starter

    开源软件官网提供的demo无疑是学习开源软件的最好的最原始的样例. 在Storm官网里下载apache-storm-0.9.6.zip,里面\examples\storm-starter\src\jv ...

  7. git 撤销修改以及删除文件

    撤销修改 1.如果当你修改了代码,然后又发现修改错误以后,想撤销前面的操作的时候该怎么办呢? 既然错误发现得很及时,就可以很容易地纠正它.你可以删掉最后一行,手动把文件恢复到上一个版本的状态.如果用 ...

  8. 本地缓存下载文件,download的二次封装

    来源:http://ask.dcloud.net.cn/article/524 源码下载链接 说明: (1)由于平时项目中大量用到了附件下载等功能,所以就花了一个时间,把plus的downlaod进行 ...

  9. shell小程序

    因此需要挑选学生,因此需要一个抓阄的程序:要求:1.执行脚本后,想去的同学输入英文名字全拼,产生随机数01-99之间的数字,数字越大就去参加项目实践,前面已经抓到的数字,下次不能在出现相同数字.2.第 ...

  10. 12天学好C语言——记录我的C语言学习之路(Day 3)

    12天学好C语言--记录我的C语言学习之路 Day 3: 不知不觉到了第三天的学习,我们前两天学习的东西很杂乱,各个方面都有学习.我觉得这不是不系统,也不是学的不扎实,这种学习对于初学者而言我认为是很 ...