アンインストール方法の一部として、仮想ディレクトリとアプリケーション プールを .NET から削除する必要があります。どこかの Web で次のコードを見つけました。
private static void DeleteTree(string metabasePath)
{
// metabasePath is of the form "IIS://<servername>/<path>"
// for example "IIS://localhost/W3SVC/1/Root/MyVDir"
// or "IIS://localhost/W3SVC/AppPools/MyAppPool"
Console.WriteLine("Deleting {0}:", metabasePath);
try
{
DirectoryEntry tree = new DirectoryEntry(metabasePath);
tree.DeleteTree();
tree.CommitChanges();
Console.WriteLine("Done.");
}
catch (DirectoryNotFoundException)
{
Console.WriteLine("Not found.");
}
}
COMException
しかし、それは上に投げるようtree.CommitChanges();
です。この行は必要ですか?それは正しいアプローチですか?