打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
使用ASP.NET控制Windows服务的开启与关闭
C# ASP.NET 控制windows服务的 开启和关闭 以及重启

使用ASP.NET控制Windows服务的开启与关闭

效果如图

代码

首页页面需要添加引用

页面的pageload中

实例化windows服务

protected void Page_Load(object sender, EventArgs e)
{
//此处代码用于显示页面加载中的效果,可以无视。
ClientScript.RegisterClientScriptBlock(GetType(), "", initJavascript());
//实例化windows服务,LedIPTransfer为我自己写的windows服务,大家可以用
service = new ServiceController("LedIPTransfer");
OnLoad();
}

至于服务名称的获取,查看服务详情后复制显示名称即可。


用于显示页面当前服务的状态

private void OnLoad()
{
//获取服务的运行状态
string state = service.Status.ToString();
switch (state)
{
case "Stopped":
lblState.Text = "服务已停止";
btnRestart.Enabled = false;
btnStart.Enabled = true;
btnStop.Enabled = false;
break;
case "Running":
lblState.Text = "服务运行中";
btnStart.Enabled = false;
btnRestart.Enabled = true;
break;
/* 以下服务状态仅供参考,除非服务启动很慢,一般不需进行如下设置
case "Paused":
lblState.Text = "服务已暂停";
break;
case "StartPending":
lblState.Text = "服务正在启动";
break;
case "StopPending":
lblState.Text = "服务正在停止";
break;
case "ContinuePending":
lblState.Text = "服务即将继续";
break;
case "PausePending":
lblState.Text = "服务即将暂停";
break;
* */
}
}

/// <summary>

/// 启动服务

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

protected void btnStart_Click(object sender, EventArgs e)

{

service.Start();

//等待服务到达运行状态

service.WaitForStatus(ServiceControllerStatus.Running);

ClientScript.RegisterStartupScript(GetType(), "", "window.location.href=window.location.href", true);

}

/// <summary>

/// 停止服务

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

protected void btnStop_Click(object sender, EventArgs e)

{

service.Stop();

service.WaitForStatus(ServiceControllerStatus.Stopped);

ClientScript.RegisterStartupScript(GetType(), "", "window.location.href=window.location.href", true);

}

/// <summary>

/// 重启服务

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

protected void btnRestart_Click(object sender, EventArgs e)

{

//停止服务

service.Stop();

service.WaitForStatus(ServiceControllerStatus.Stopped);

//启动服务

service.Start();

service.WaitForStatus(ServiceControllerStatus.Running);

ClientScript.RegisterStartupScript(GetType(), "", "window.location.href=window.location.href", true);

}

如有疑问请留言。

本文来自:hi.baidu.com/无瑕

转载请保留全文

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
ScriptManager和ClientScriptManager
新浪接口API调用
步步为营 .NET三层架构解析 八、UI的设计(GridView的设计及其分页)-程序开发...
C#实现网站总结
C#按回车Enter使输入焦点自动跳到下一个TextBox的方法收集
.net中的认证(authentication)与授权(authorization)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服