मुझे अपनी अनइंस्टॉल विधि के हिस्से के रूप में .NET से वर्चुअल निर्देशिका और एप्लिकेशन पूल को हटाने की आवश्यकता है। मैंने कहीं वेब पर निम्न कोड मिला:मैं आईआईएस ऑब्जेक्ट्स को सी # से कैसे हटा सकता हूं?
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();
पर फेंक रहा है। क्या मुझे इस लाइन की ज़रूरत है? क्या यह एक सही दृष्टिकोण है?
क्या आप पूर्ण COMException पेस्ट कर सकते हैं? – Kev
आपको वास्तव में इन प्रकार की चीजों को करने के लिए विंडोज इंस्टालर का उपयोग करना चाहिए। आईआईएस ऑब्जेक्ट्स को स्वचालित रूप से बनाने और निकालने के लिए विक्स ने फ़ंक्शंस में बनाया है। –
@ जेसे - विक्स का उपयोग करके आप मौजूदा लोगों को चुनने के बजाय उपयोगकर्ताओं को एक नए ऐप पूल/वेबसाइट/वीडीआईआर के लिए संकेत दे सकते हैं (वीएस वेब सेटअप प्रोजेक्ट केवल आपको मौजूदा आईआईएस ऑब्जेक्ट्स चुनने देता है)? – Kev