<?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=7211</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7211&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBScript: получение отсортированного списка файлов каталога».]]></description>
		<lastBuildDate>Sun, 13 May 2012 04:31:07 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: VBScript: получение отсортированного списка файлов каталога]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=60270#p60270</link>
			<description><![CDATA[<p>Другим, более простым вариантом может стать использование <strong><a href="http://www.microsoft.com/technet/scriptcenter/tools/logparser/default.mspx">Log Parser 2.2</a></strong> (<a href="http://forum.script-coding.com/viewtopic.php?id=947">VBScript: работаем с утилитой LogParser от Microsoft</a>):<br /></p><div class="codebox"><pre><code>Option Explicit

Dim objLogQuery
Dim objCOMFileSystemInputContext

Dim strQuery


Set objLogQuery                  = WScript.CreateObject(&quot;MSUtil.LogQuery&quot;)
Set objCOMFileSystemInputContext = WScript.CreateObject(&quot;MSUtil.LogQuery.FileSystemInputFormat&quot;)

With objCOMFileSystemInputContext
    .recurse             = False
    .useLocalTime        = True
    .preserveLastAccTime = True
End With

strQuery = &quot;SELECT Path, LastWriteTime, Attributes FROM &#039;c:\Temp\*.*&#039; WHERE Attributes NOT LIKE &#039;D________&#039; ORDER BY LastWriteTime DESC&quot;

With objLogQuery.Execute(strQuery, objCOMFileSystemInputContext)
    Do Until .atEnd
        With .getRecord
            WScript.Echo .getValue(&quot;LastWriteTime&quot;), vbTab, .getValue(&quot;Path&quot;)
        End With
        
        .moveNext
    Loop
    
    .close
End With

Set objCOMFileSystemInputContext = Nothing
Set objLogQuery                  = Nothing

WScript.Quit 0</code></pre></div><p>В данном примере так же осуществляется сортировка файлов по дате/времени последней модификации.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Sun, 13 May 2012 04:31:07 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=60270#p60270</guid>
		</item>
		<item>
			<title><![CDATA[VBScript: получение отсортированного списка файлов каталога]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=60269#p60269</link>
			<description><![CDATA[<p>Одним из вариантов может быть использование ADO: создание отсоединённого набора записей потребной структуры, последовательное заполнение его содержимым каталога, сортировка по потребному полю (в примере — по дате/времени последней модификации) и последующее чтение из отсортированного набора записей.<br /></p><div class="codebox"><pre><code>Option Explicit

Const adDate = 7
Const adVarChar = 200


Dim strFolder

Dim objFSO
Dim objFile


strFolder = &quot;C:\Temp&quot;

Set objFSO = WScript.CreateObject(&quot;Scripting.FileSystemObject&quot;)

With WScript.CreateObject(&quot;ADODB.Recordset&quot;)
    With .Fields
        .Append &quot;Path&quot;,             adVarChar, 2^15 - 1
        .Append &quot;DateLastModified&quot;, adDate
    End With
    
    .Open
    .Sort = &quot;DateLastModified DESC&quot;
    
    For Each objFile In objFSO.GetFolder(strFolder).Files
        .AddNew Array(&quot;Path&quot;, &quot;DateLastModified&quot;), Array(objFile.Path, objFile.DateLastModified)
    Next
    
    .MoveFirst
    
    Do Until .EOF
        With .Fields
            WScript.Echo .Item(&quot;DateLastModified&quot;).Value, vbTab, .Item(&quot;Path&quot;).Value
        End With
        
        .MoveNext
    Loop
    
    .Close
End With

WScript.Quit 0</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Sun, 13 May 2012 04:26:59 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=60269#p60269</guid>
		</item>
	</channel>
</rss>
