C# 使用C检查应用程序池(IIS 6)的状态#
如何使用C#检查IIS6应用程序池的状态? 例如,我想知道它是否正在运行!C# 使用C检查应用程序池(IIS 6)的状态#,c#,iis-6,application-pool,C#,Iis 6,Application Pool,如何使用C#检查IIS6应用程序池的状态? 例如,我想知道它是否正在运行! 提前感谢你的帮助 我认为您需要( (Windows管理工具) 有几篇文章介绍如何通过vbscript使用WMI管理IIS,例如 如果你读了其中一篇文章,你应该能够很容易地把它改编成C语言。 可以通过检查AppPoolState属性来执行此操作: protected void status() { string appPoolName = "dev.somesite.com";
提前感谢你的帮助 我认为您需要( (Windows管理工具) 有几篇文章介绍如何通过vbscript使用WMI管理IIS,例如 如果你读了其中一篇文章,你应该能够很容易地把它改编成C语言。 可以通过检查AppPoolState属性来执行此操作:
protected void status()
{
string appPoolName = "dev.somesite.com";
string appPoolPath = @"IIS://" + System.Environment.MachineName + "/W3SVC/AppPools/" + appPoolName;
int intStatus = 0;
try
{
DirectoryEntry w3svc = new DirectoryEntry(appPoolPath);
intStatus = (int)w3svc.InvokeGet("AppPoolState");
switch (intStatus)
{
case 2:
lblStatus.Text = "Running";
break;
case 4:
lblStatus.Text = "Stopped";
break;
default:
lblStatus.Text = "Unknown";
break;
}
}
上面的代码正在运行,但这需要更多信息,因为它给出了一个错误“拒绝访问”。你能解释一下吗。@KartikGoyal:从管理工具-->Windows防火墙禁用防火墙,高级设置对我很有用。上面的代码帮助我找到了详细信息。我已经在下面的链接中更新了上述方法。你可以在链接上找到这个