IIS应用程序池的使用代码来管理的方法

原创 2004年07月07日 10:25:00

using System;
using System.DirectoryServices;
using System.Reflection;

namespace ADSI1
{
  ///


  /// Small class containing methods to configure IIS.
  ///

  class ConfigIIS
  {
    ///
    /// The main entry point for the application.
    ///

    [STAThread]
   //主程序入口,可以选择用哪些,我为了方便,全部功能都写上去了。
    static void Main(string[] args)
    {
      string AppPoolName = "MyAppPool";
      string newvdir1 = "MyVDir";
      DirectoryEntry newvdir = CreateVDir(newvdir1);

      CreateAppPool(AppPoolName);
      AssignAppPool(newvdir, AppPoolName);

      ConfigAppPool("Stop",AppPoolName);
    }

  //创建虚拟目录
    static DirectoryEntry CreateVDir (string vdirname)
    {
      DirectoryEntry newvdir;
      DirectoryEntry root=new DirectoryEntry("IIS://localhost/W3SVC/1/Root");
      newvdir=root.Children.Add(vdirname, "IIsWebVirtualDir");
      newvdir.Properties["Path"][0]= "c://inetpub//wwwroot";
      newvdir.Properties["AccessScript"][0] = true;
      newvdir.CommitChanges();
      return newvdir;
    }

//创建新的应用程序池。
    static void CreateAppPool(string AppPoolName)
    {
      DirectoryEntry newpool;
      DirectoryEntry apppools=new DirectoryEntry("IIS://localhost/W3SVC/AppPools");
      newpool=apppools.Children.Add(AppPoolName, "IIsApplicationPool");
      newpool.CommitChanges();
    }

    static void AssignAppPool(DirectoryEntry newvdir, string AppPoolName)
    {
      object[] param={0, AppPoolName, true};
      newvdir.Invoke("AppCreate3", param);
    }

     //method是管理应用程序池的方法,有三种Start、Stop、Recycle,而AppPoolName是应用程序池名称
     static void ConfigAppPool(string method,string AppPoolName)
     {
        DirectoryEntry appPool = new DirectoryEntry("IIS://localhost/W3SVC/AppPools");
        DirectoryEntry findPool = appPool.Children.Find(AppPoolName,IIsApplicationPool");
        findPool.Invoke(method,null);
        appPool.CommitChanges();
        appPool.Close();
     }

      //应用程序池的列表
      static void AppPoolList()
      {
         DirectoryEntry appPool = new DirectoryEntry("IIS://localhost/W3SVC/AppPools");
          foreach(DirectoryEntry a in appPool.Children)
          {
               Console.WriteLine(a.Name);
          } 
      }

     private void VDirToAppPool()
        {
          DirectroryEntry VD = new DirectoryEntry("IIS://localhost/W3SVC/1/ROOT/ccc");
          Console.WriteLine(VD.Properties["AppPoolId"].Value.ToString());
         }
  }
}

IIS系列:三、管理应用程序池

简介:本文介绍如何创建应用程序池以及如何修改应用程序池配置。 管理应用程序池: 1、右键点击应用程序池,选择“添加应用程序池“; 2、输入应用程序池名称,选择支持的.Net版本,V2.0支持.Ne...
  • Lyu_JinBo
  • Lyu_JinBo
  • 2016年01月26日 17:26
  • 911

C#IIS网站应用程序池列表添加修改删除

//添加应用程序池空间引用using System.DirectoryServices;using System.Text; using System.Text.RegularExpressions;...
  • xqf222
  • xqf222
  • 2007年11月28日 14:56
  • 3464

IIS应用程序池的介绍

默认情况下,在安装IIS时会创建一个默认网站并创建一个名为DefaultAppPool的应用程序池为其使用;默认配置下的应用程序池已经可以很好的进行工作,建议你只有在特别需要时才对应用程序池进行配置。...
  • jkpi888
  • jkpi888
  • 2013年12月03日 23:05
  • 1624

什么是IIS应用程序池以及应用程序池详解(二)

  一起来 看看有关应用程序池的一些问题。应用程序池的“属性”对话框有四页——回收,性能,运行状况,标识,如图六所示。在这些选项页中,最引人注目的恐怕就是 “回收”页,使用该选项页可以管理工作进程的回...
  • bindsang
  • bindsang
  • 2008年02月15日 11:34
  • 1062

C# IIS应用程序池辅助类

using System.Collections.Generic; using System.DirectoryServices; using System.Linq; using Microsoft...
  • a497785609
  • a497785609
  • 2014年07月19日 09:50
  • 1092

对于IIS上的应用程序池监控

最近公司的 运维碰到了一些问题,在客户某台服务器(系统为2003,IIS版本为6.0)上某个比较重要的应用程序池会不定期的停止,原因未知。这样就影响了服务的运行。 运维启动应用程序池后问题解决,但是因...
  • zx75991
  • zx75991
  • 2016年08月26日 15:13
  • 1070

IIS6应用程序池的配置和优化

原帖地址:http://niutuku.com/tech/www/273592.shtml
  • ITX2000
  • ITX2000
  • 2014年09月18日 17:02
  • 705

访问站点提示:Service Unavailable,应用程序池的状况提示为:未指定错误

windows 2003系统iis6访问本机的站点时提示“Service Unavailable”;查看iis的应用程序池,状况提示为:未指定错误,同时应用程序池自动停止运行;用事件查看器查看系统错误...
  • lincnl
  • lincnl
  • 2007年06月13日 15:01
  • 3691

IIS7.0应用程序池集成和经典的区别

集成模式,如果托管应用程序
  • u011894253
  • u011894253
  • 2014年08月22日 11:08
  • 2107

IIS应用程序池自动回收问题的解决办法

 IIS可以设置定时自动回收,默认回收是1740分钟,也就是29小时。IIS自动回收相当于服务器IIS重启,应用程序池内存清空,所有数据被清除,相当于IIS重启,在快速开发平台服务器端,为了减小...
  • proglovercn
  • proglovercn
  • 2016年04月28日 21:36
  • 4123
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:IIS应用程序池的使用代码来管理的方法
举报原因:
原因补充:

(最多只允许输入30个字)