如何使用C#/ VB.Net和WMI从IIS 7和IIS 7.5中的FTP站点删除虚拟目录?

问题描述:

我希望大家都做得很好。如何使用C#/ VB.Net和WMI从IIS 7和IIS 7.5中的FTP站点删除虚拟目录?

我尝试使用WMi(服务器管理器类)删除虚拟目录,然后重新创建不同的值。 我面临的问题是虚拟目录没有被删除。请帮忙。

如何检查虚拟目录的存在和呼叫删除?

和类似的如何检查一个目录是否存在,然后再次添加具有稍微不同的属性。

基本目标是用重命名 网站一起重命名 虚拟目录。我希望我很清楚

这是我的代码。

Try 
    Using mgr As New ServerManager() 
    Dim site As Site = mgr.Sites(DomainName) 
    Dim app As Application = site.Applications("/") '.CreateElement() '("/" & VirDirName) 
    Dim VirDir As VirtualDirectory = app.VirtualDirectories.CreateElement() 
     For Each VirDir In app.VirtualDirectories 
       If VirDir("path") = "/" & VirDirName Then 
        app.VirtualDirectories.Remove(VirDir) 
        Exit For 
       End If 
     Next 
     mgr.CommitChanges() 
    End Using 
Catch Err As Exception 
     Ex = Err 
     Throw New Exception(Err.Message, Ex) 
End Try 

只是为了上面的代码不使用WMI但Microsoft.Web.Administration(MWA)澄清。

你是说你的目标是重命名该网站的目录或只是网站名称?如果更改Sitename,则不需要进一步设置。如果目标是保持同步的目录名,然后几乎总是它是要重命名一下网站的根,所以才这样做:

Using mgr As New ServerManager() 
    Dim site As Site = mgr.Sites(DomainName) 
    site.Applications("/").VirtualDirectories("/").PhysicalPath = "...Whatever new physical Path" 

    mgr.CommitChanges() 
End Using 
+0

其实我想要别的东西,但你的解决方案解决了无论如何,这个问题。谢谢。 – 2010-05-24 12:03:38