1、为网站添加新的引用,加入:system.serviceproces.dll
2、在代码文件头部加如:using System.ServiceProcess;
3、服务的启动使用如下代码:
ServiceController sc = new ServiceController("service1");
if (sc.Status == ServiceControllerStatus.Stopped)
{
sc.Start();
}
4、服务的关闭使用如下代码:
ServiceController sc = new ServiceController("service1");
if (sc.Status == ServiceControllerStatus.Running)
{
sc.Stop();
}
5、服务的控制权限的解决办法
windows2003等服务器系统都提供了完善的权限访问机制,这就是我为什么不用前面说过的在asp.net 中调用另一个程序的办法来通过net 命令启动和停止服务。因为首先用net命令显然比较麻烦,而调用新进程的发放程序运行依然是在aspnet的用户下(通过网页访问的默认用户),当网页关 闭,会话结束时间到达就会自动释放该用户运行的相关程序。而net命令同样需要相应权限。asp.net 中可以在web.config的下添加
从而解决用户的登入权限问题。
以上五步就可以完成对服务器服务的控制了!
<system.web>
<identity impersonate="true" userName="admin" password="admin"/>