Тема: VBS: поиск по диску и копирование файлов
Доброго времени суток уважаемые форумчане. Прошу сильно не пинать за возможно элементарные для вас вопросы, по для меня это пока тёмный лес!!! Изучение VBS начал совершенно недавно и пока мало что получается.... Пытаюсь сделать скрипт поиска файлов по диску на всю глубину и при обнаружении копировать его в отдельную папку... На форуме нашёл код г. Аlexii и взял его за основу... Однако познаний пока не достаточно и танцы с бубеном не увенчались успехом:)
Option Explicit
Dim objFSO
Dim objDrive
Dim strFileNameForFind
Dim i
strFileNameForFind = "acaddoc.lsp" ' Имя файла для поиска.
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
For Each objDrive In objFSO.Drives ' Перебираем все существующие тома.
If objDrive.DriveType = 1 Then ' Том съёмный?
If objDrive.IsReady Then ' Том готов?
WScript.Echo "Find on drive " & objDrive.DriveLetter & ":..."
ScanSubFolders objDrive.RootFolder, strFileNameForFind ' Вызываем процедуру поиска
' для корневой папки этого тома.
' Обработка вложенных папок будет
' вестись рекурсивно.
End If
End If
Next
Set objFSO = Nothing
WScript.Quit 0
'=============================================================================
'=============================================================================
Sub ScanSubFolders(objFolder, strFileName)
Dim objSubFolder
Dim strFullFileName
WScript.Echo objFolder.Path ' Выводим путь обрабатываемой папки (для
' отладки; имеет смысл закомментировать).
strFullFileName = objFSO.BuildPath(objFolder, strFileName) ' Строим полный путь файла.
If objFSO.FileExists(strFullFileName) Then ' Файл существует?
WScript.Echo vbTab & "Found as [" & strFullFileName & "], deleting..."
'objFSO.DeleteFile strFullFileName, True ' Удаляем файл
End If
On Error Resume Next ' Обрабатываем ошибки, возможные в случае,
' когда нет доступа к содержимому папки
' (пример - «System Volume Information».
For Each objSubFolder In objFolder.SubFolders
If Err.Number = 0 Then ' Удалось получить доступ к содержимому папки?
On Error Goto 0 ' Восстанавливаем стандартную обработку ошибок
ScanSubFolders objSubFolder, strFileName ' Вызываем процедуру поиска для каждой из подпапок.
Else ' Если не удалось —
Err.Clear ' сбрасываем состояние ошибки,
On Error Goto 0 ' восстанавливаем стандартную обработку ошибок и движемся дальше.
WScript.Echo "Can't enumerate subfolders for folder [" & objFolder.Path & "]."
End If
Next
End Sub
Как и что нужно переделать что-бы поиск происходил по определённому диску( допустим С), искался файл допустим *.txt и при обнаружении копировался бы в папку ( допустим: D:\rezerv)?