Microsoft.Web.Administration を使用して実行中の Web サイトのリストを取得するためのコード スニペットを次に示します。この DLL は次の場所にあります: c:\Windows\System32\inetsrv\Microsoft.Web.Administration.dll
class Program
{
static void Main(string[] args)
{
string serverName = "localhost";
using (Microsoft.Web.Administration.ServerManager sm = Microsoft.Web.Administration.ServerManager.OpenRemote(serverName))
{
int counter = 1;
foreach (var site in sm.Sites)
{
Console.Write(String.Format(CultureInfo.InvariantCulture, "Site number {0} : {1}{2}", counter.ToString(), site.Name, Environment.NewLine));
counter++;
}
}
Console.ReadLine();
}
}
「locahost」をリモート サーバー名に置き換えます。
これがIIS 6で機能することを願っています(IIS 7.5でのみ試しました;-))