当前位置:   article > 正文

用c#怎么检测iis应用程序池是否被停止了,即它的状态_查看iis某个服务是否停止过

查看iis某个服务是否停止过

我的iis应用程序池动不动就被自动停止了,我想做个小程序,自动检测iis应用程序池是否被停止,如果停止了就自动启动它,高手帮忙

用下面代码可以启动应用程序池
DirectoryEntry appPool = new DirectoryEntry("IIS://localhost/W3SVC/AppPools");
DirectoryEntry findPool =appPool.Children.Find(AppPoolName,"IIsApplicationPool");
findPool.Invoke(method,null);
appPool.CommitChanges();
appPool.Close();

用下面代码可以检查一个服务是否被启动
System.ServiceProcess.ServiceController  sc  =  new  System.ServiceProcess.ServiceController();  
sc.ServiceName  =  AppPoolName;//"MSSQLSERVER";  
if(  sc.Status    !=  ServiceControllerStatus.Running  )  
sc.Start();

问题是怎么用这个检测iis应用程序池是否被停止了,高手帮忙,谢谢拉


在你上面的代码中不是可以取得“IIS://localhost/W3SVC”这个对象么?

那么应该可以得到“IIS://localhost/W3SVC/IIsWebServer”这个对象,
你可以检查这个对象的“ServerState”属性。
ServerState Result:
         1: Starting
         2: Started
         3: Stopping
         4: Stopped
         5: Pausing
         6: Paused
         7: Continuing
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/252294
推荐阅读
相关标签
  

闽ICP备14008679号