下面的代码实现应用程序池的创建,并设置一些属性。

string strAppPoolName = "MyAppPool1";
System.DirectoryServices.DirectoryEntry appPoolRoot = new System.DirectoryServices.DirectoryEntry(@"IIS://localhost/W3SVC/AppPools");
System.DirectoryServices.DirectoryEntry newAppPool = appPoolRoot.Children.Add(strAppPoolName, "IIsApplicationPool");
//如果指定标识,可以使用下面的方法,否则,可以直接执行 CommitChanges 方法:
// 0 = Local System(本地系统)
// 1 = Local Service(本地服务)
// 2 = Network Service(网络服务)
// 3 = Custom Identity(自定义配置)需要设置 WAMUserName 和 WAMUserPass 属性

newAppPool.Properties["AppPoolIdentityType"][0] = 3;
newAppPool.Properties["WAMUserName"][0] = @"VISTA\1"; //domain\用户,注意:此用户必须在IIS_WPG组中
newAppPool.Properties["WAMUserPass"][0] = "1";
//其它属性类似,如设置Web园数目:
newAppPool.Properties["MaxProcesses"][0] = 5;
newAppPool.CommitChanges();