Тема: VBScript: слежение за созданием файлов в указанном каталоге
Скрипт-пример. Выдаёт сообщение всякий раз, когда в указанном каталоге появляется новый файл.
Для завершения работы удалите процесс или закройте окно командного интерпретатора.
Идея взята с сайта http://admtech.mrsu.ru.
strDir = "c:\temp" ' каталог, за которым следим
strComputer = "." ' имя компьютера; "." означает текущий компьютер
'==============================================================================
strDirSlash = Replace(strDir, "\", "\\\\")
strNamespace = "Root\CIMV2"
' Подключаемся к пространству имен
Set objService = GetObject("WinMgmts:\\" & strComputer & "\" & strNamespace)
Set objSink = WScript.CreateObject("WbemScripting.SWbemSink", "Sink_")
objService.ExecNotificationQueryAsync objSink, _
"SELECT * FROM __InstanceCreationEvent WITHIN 5 WHERE " &_
"Targetinstance ISA 'CIM_DirectoryContainsFile' and " &_
"TargetInstance.GroupComponent= " &_
"'Win32_Directory.Name=""" & strDirSlash & """'"
' Выводим сообщение о запуске сканера
Wscript.Echo "Запущен сканер создания файла в папке " & strDir
' Запускаем бесконечный цикл ожидания
While 1
WScript.Sleep 1000
Wend
' Процедура-обработчик события OnObjectReady объекта sWbemSink
Sub Sink_OnObjectReady(oOutParams, oContext)
strResult = Date & " " & Time & vbCrLf &_
"Создан файл: " & oOutParams.TargetInstance.PartComponent
Wscript.Echo strResult
End Sub
В названии ветки всегда должен быть указан язык программирования или среда исполнения скрипта, если это возможно.