Set objLogParser = CreateObject("MSUtil.LogQuery") Set objInputFormat = CreateObject("MSUtil.LogQuery.FileSystemInputFormat") objInputFormat.Recurse = 0
Set objOutputFormat = CreateObject("MSUtil.LogQuery.NativeOutputFormat") objOutputFormat.rtp = -1
strQuery = "SELECT Name, CreationTime FROM 'C:/Scripts/*.*' " & _ "WHERE NOT Attributes LIKE '%D%' ORDER BY CreationTime" objLogParser.ExecuteBatch strQuery, objInputFormat, objOutputFormat
接下来配置 SQL 查询以检索文件信息。如果您对 SQL 有一些了解,此查询应该相对容易分析一些;如您所见,我们正要查询 C:/Scripts 中所有文件的 Name 和 CreationTime。此外,我们要使返回的数据按创建日期和时间顺序排列,最先创建的文件排在最前面:
strQuery = "SELECT Name, CreationTime FROM 'C:/Scripts/*.*' " & _ "WHERE NOT Attributes LIKE '%D%' ORDER BY CreationTime DESC"
此查询中唯一不寻常的就是 WHERE 子句:WHERE NOT Attributes LIKE '%D%'。不用作过多的解释,此子句筛选出文件夹,从而只返回文件。包含 Directory 属性的文件系统对象就是文件夹;因为我们不想要文件夹,所以使用 WHERE NOT 语法清除拥有 Directory(缩写为 %D%)属性的所有对象。