IIS 常用操作编程实现(VB6)

发表于:2007-07-14来源:作者:点击数: 标签:
原先我是不知道的,在网上也是一直找不到相关资料,后来无意间在一个delphi版的 介绍中看到了相关的内容,于是用 vb 仿做了一个。 如果也有人无意间看到受益,则大感欣慰也。 基础:添加以下引用:1,iisext.dll; 2, adsiis.dll; 3,activeds.tlb。 1,在 IIS
原先我是不知道的,在网上也是一直找不到相关资料,后来无意间在一个delphi版的 介绍中看到了相关的内容,于是用vb仿做了一个。
如果也有人无意间看到受益,则大感欣慰也。

基础:添加以下引用:1,iisext.dll; 2, adsiis.dll; 3,activeds.tlb。

1,在 IIS 建立虚拟目录,
    Dim sComputer as string
    Dim websvc, vRoot, vDir
    sComputer = "localhost"
    
    'Get Default Web Site Object
    Set websvc = GetObject("IIS://" & sComputer & "/W3svc/1")
    
    'Get root of Default Web Site
    Set vRoot = websvc.GetObject("IIsWebVirtualDir", "Root")
    
    Dim itm As ListItem
    Dim buf As String, errInfo As String, tryVirt
    For Each itm In ListView1.ListItems
        Err.Clear
        On Error Resume Next
        Set tryVirt = GetObject("IIS://" & sComputer & "/W3svc/1/ROOT/" & itm.SubItems(1))
        'Debug.Print Err.Number
        '如果得不到对应的虚拟目录,则出错,此时可以新建此虚拟目录。
        If Err.Number <> 0 Then
            Err.Clear
            Set vDir = vRoot.Create("IISWebVirtualDir", itm.SubItems(1))
            vDir.path = itm.Text
            vDir.Aclearcase/" target="_blank" >ccessread = True
            vDir.SetInfo
           
        Else
        '记录已经创建的虚拟目录名称。
        'If tryVirt.AppGetStatus2 = 0 Then
             errInfo = errInfo & vbCrLf & itm.SubItems(1)
        End If
    
    Next

其实就是
    Set websvc = GetObject("IIS://" & sComputer & "/W3svc/1")
    Set vRoot = websvc.GetObject("IIsWebVirtualDir", "Root")
    Set vDir = vRoot.Create("IISWebVirtualDir", vdName)
    vDir.Path=someDir
    vDir.setInfo
这几个语句就够了

2。删除虚拟目录
    Dim sComputer, sPhyDir, sVirDir As String
    Dim websvc, vRoot, vDir
    sComputer = "localhost"
    
    'Get Default Web Site Object
    Set websvc = GetObject("IIS://" & sComputer & "/W3svc/1")
    
    'Get root of Default Web Site
    Set vRoot = websvc.GetObject("IIsWebVirtualDir", "Root")
    
    Dim itm As ListItem
    Dim buf As String, errInfo As String, tryVirt
    For Each itm In ListView1.ListItems
        Err.Clear
        On Error Resume Next
        Call vRoot.Delete("IISWebVirtualDir", itm.SubItems(1))
        If Err.Number <> 0 Then
            errInfo = errInfo & vbCrLf & itm.SubItems(1)
        End If
        Err.Clear    
    Next

3。其他诸如建立站点,删除站点可以类似做到,具体可以通过在 msdn 中搜索 IISWebVirtualDir 看到 

原文转自:http://www.ltesting.net