<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBScript: создание подкаталогов]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=683&amp;type=atom" />
	<updated>2007-09-15T07:40:11Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=683</id>
		<entry>
			<title type="html"><![CDATA[VBScript: создание подкаталогов]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=4781#p4781" />
			<content type="html"><![CDATA[<p>Консольная команда MKDIR или MD при создании каталога создаёт при необходимости все промежуточные каталоги в пути, если они не существуют. VBScript по умолчанию такого не делает. Чтобы это обойти, можно использовать следующую процедуру:<br /></p><div class="codebox"><pre><code>Sub CreateDirs(MyDirName)
    Set objFSO = CreateObject( &quot;Scripting.FileSystemObject&quot; )
    &#039; Получение полного пути, если задан относительный (из текущего каталога)
    strDir = objFSO.GetAbsolutePathName(MyDirName)
    &#039; Разбивка пути на составляющие
    arrDirs = Split(strDir, &quot;\&quot;)
    &#039; Проверка, это UNC-путь, или нет
    &#039; strDirBuild - начальный каталог, с которого начнётся создание каталогов
    If Left(strDir, 2) = &quot;\\&quot; Then
        strDirBuild = &quot;\\&quot; &amp; arrDirs(2) &amp; &quot;\&quot; &amp; arrDirs(3) &amp; &quot;\&quot;
        idxFirst    = 4
    Else
        strDirBuild = arrDirs(0) &amp; &quot;\&quot;
        idxFirst    = 1
    End If
    &#039; Создание каталогов
    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

&#039; CreateDirs &quot;C:\temp\_temp1\_temp2\_temp3&quot;
&#039; CreateDirs &quot;\\CompName\c$\temp\_temp1\_temp2\_temp3&quot;</code></pre></div><p>Источник - <a href="http://www.robvanderwoude.com/vbstech_folders_md.html">http://www.robvanderwoude.com/vbstech_folders_md.html</a>.</p>]]></content>
			<author>
				<name><![CDATA[The gray Cardinal]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2</uri>
			</author>
			<updated>2007-09-15T07:40:11Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=4781#p4781</id>
		</entry>
</feed>
