Enumerazione dei pool di applicazioni in IIS

Mi chiedo se esiste un modo per enumerare la raccolta di pool di applicazioni (non le applicazioni in un determinato pool, ma i pool stessi) sul server IIS locale utilizzando ASP.net 3.5 senza l’utilizzo di WMI e, in tal caso, qualcuno può fornire un collegamento o un esempio su come è fatto?

(Ho dimenticato di aggiungere la versione di IIS è 6.0).

Questo dovrebbe aiutare:

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.DirectoryServices; namespace AppPoolEnum { class Program { static void Main(string[] args) { DirectoryEntries appPools = new DirectoryEntry("IIS://localhost/W3SVC/AppPools").Children; foreach (DirectoryEntry appPool in appPools) { Console.WriteLine(appPool.Name); } } } } 

Dovrei anche aggiungere che non funzionerà in parziale fiducia.

Un altro modo che potrebbe essere utile.

 using System.IO; using Microsoft.Web.Administration; namespace AppPoolEnum { class Program { static void Main(string[] args) { foreach (var appPool in new ServerManager().ApplicationPools) { Console.WriteLine(appPool.Name); } } } }