<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; VBScript: создание подкаталогов]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=683</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=683&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBScript: создание подкаталогов».]]></description>
		<lastBuildDate>Sat, 15 Sep 2007 07:40:11 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[VBScript: создание подкаталогов]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=4781#p4781</link>
			<description><![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>]]></description>
			<author><![CDATA[null@example.com (The gray Cardinal)]]></author>
			<pubDate>Sat, 15 Sep 2007 07:40:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=4781#p4781</guid>
		</item>
	</channel>
</rss>
