1

Тема: VBScript: создание подкаталогов

Консольная команда MKDIR или MD при создании каталога создаёт при необходимости все промежуточные каталоги в пути, если они не существуют. VBScript по умолчанию такого не делает. Чтобы это обойти, можно использовать следующую процедуру:

Sub CreateDirs(MyDirName)
    Set objFSO = CreateObject( "Scripting.FileSystemObject" )
    ' Получение полного пути, если задан относительный (из текущего каталога)
    strDir = objFSO.GetAbsolutePathName(MyDirName)
    ' Разбивка пути на составляющие
    arrDirs = Split(strDir, "\")
    ' Проверка, это UNC-путь, или нет
    ' strDirBuild - начальный каталог, с которого начнётся создание каталогов
    If Left(strDir, 2) = "\\" Then
        strDirBuild = "\\" & arrDirs(2) & "\" & arrDirs(3) & "\"
        idxFirst    = 4
    Else
        strDirBuild = arrDirs(0) & "\"
        idxFirst    = 1
    End If
    ' Создание каталогов
    For i = idxFirst to Ubound(arrDirs)
        strDirBuild = objFSO.BuildPath(strDirBuild, arrDirs(i))
        If Not objFSO.FolderExists(strDirBuild) Then
            objFSO.CreateFolder strDirBuild
        End if
    Next
    Set objFSO= Nothing
End Sub

' CreateDirs "C:\temp\_temp1\_temp2\_temp3"
' CreateDirs "\\CompName\c$\temp\_temp1\_temp2\_temp3"

Источник - http://www.robvanderwoude.com/vbstech_folders_md.html.

Предложения в русском языке начинаются с большой буквы и заканчиваются точкой.
В названии ветки всегда должен быть указан язык программирования или среда исполнения скрипта, если это возможно.