当前位置:  开发笔记 > 编程语言 > 正文

如何检测我当前运行的应用程序池?(IIS6)

如何解决《如何检测我当前运行的应用程序池?(IIS6)》经验,为你挑选了1个好方法。

我需要知道如何检测我正在运行的当前应用程序池,因此我可以通过编程方式对其进行回收.

有谁知道如何为IIS6做这个?

我目前用于回收应用程序池的代码是:

    /// 
    /// Recycle an application pool
    /// 
    /// 
    public static void RecycleAppPool(string IIsApplicationPool) {
        ManagementScope scope = new ManagementScope(@"\\localhost\root\MicrosoftIISv2");
        scope.Connect();
        ManagementObject appPool = new ManagementObject(scope, new ManagementPath("IIsApplicationPool.Name='W3SVC/AppPools/" + IIsApplicationPool + "'"), null);

        appPool.InvokeMethod("Recycle", null, null);
    }   

Wolf5.. 7

搜索后我自己找到了答案:

   public string GetAppPoolName() {

        string AppPath = Context.Request.ServerVariables["APPL_MD_PATH"];

        AppPath = AppPath.Replace("/LM/", "IIS://localhost/");
        DirectoryEntry root = new DirectoryEntry(AppPath);
        if ((root == null)) {
            return " no object got";
        }
        string AppPoolId = (string)root.Properties["AppPoolId"].Value;
        return AppPoolId;
    }

嗯.他们需要一种方法让我把自己的答案作为答案.



1> Wolf5..:

搜索后我自己找到了答案:

   public string GetAppPoolName() {

        string AppPath = Context.Request.ServerVariables["APPL_MD_PATH"];

        AppPath = AppPath.Replace("/LM/", "IIS://localhost/");
        DirectoryEntry root = new DirectoryEntry(AppPath);
        if ((root == null)) {
            return " no object got";
        }
        string AppPoolId = (string)root.Properties["AppPoolId"].Value;
        return AppPoolId;
    }

嗯.他们需要一种方法让我把自己的答案作为答案.

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有