Страница 1 из 1
VBScript. Проверка на изменение в папке
Добавлено: 30 янв 2009, 14:27
Avsha
Есть задача.
Соорудить "check-алку" - программу проверки определенной сетевой папки с интервалом 10 минут на появление в ней файлов (папок с файлами)
с организацией сообщения-уведомления.
Какие могут быть варианты с помощью VB, VBScript реализовать эту задачу?
специализированные программы стоят денег
http://www.watchdirectory.net/download.html
Re: VBScript. Проверка на изменение в папке
Добавлено: 30 янв 2009, 23:00
Teslenko_EA
Здравствуйте
Avsha.
Надеюсь правильно понял Ваш вопрос:
check-алка
Возможно будет интересно:
исходники
и еще (вдруг у Вас нет VB6

)
PVB6.rar (portable VB6.0) 4.56 Мб
Евгений.
Re: VBScript. Проверка на изменение в папке
Добавлено: 31 янв 2009, 01:24
Aent
Re: VBScript. Проверка на изменение в папке
Добавлено: 31 янв 2009, 01:34
Aent
Re: VBScript. Проверка на изменение в папке
Добавлено: 02 фев 2009, 10:21
Avsha
Teslenko_EA, Aent спасибо за ответы.
понравились
check-алка и
http://admtech.mrsu.ru/example_10.html
надеюсь доработать до требуемого.
Re: VBScript. Проверка на изменение в папке
Добавлено: 12 фев 2009, 10:03
Avsha
Вот такой вариант в виде VBS-файла получился...
Код: Выделить всё
'*******************************************************************
' Имя: MonitorFolder_v2.vbs
' Язык: VBScript
' Описание: Контроль даты и времени последнего изменения папки и вывод сообщения при изменении
'
'*******************************************************************
Option Explicit
' Объявляем переменные
Dim FSO ' Объект FileSystemObject
Dim Folder
Dim TextStream
Dim objShellApp
Dim InPath
Dim V_DateLast
Dim Str
' Задаем путь к папке, за которой осуществляем контроль
'-------------
InPath = "С:\test"
' Получаем объект FSO.Folder, для чтения даты и времени последнего изменения папки - [DT]
'-------------
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Folder = FSO.GetFolder(InPath)
V_DateLast = Folder.DateLastModified
' Пробуем открыть файл ".\Rezult.txt" и считать предыдущее значение [DT]
'-------------
Set TextStream = FSO.OpenTextFile(".\Rezult.txt", 1, True)
Str = vbNullString
While Not TextStream.AtEndOfLine
Str = Str & TextStream.Read(1)
Wend
TextStream.Close
'MsgBox Str & "." & vbCrLf & V_DateLast & "."
' Если файла ".\Rezult.txt" еще не было, создаем его и пишем текущее значение [DT]
'-------------
If Str="" then
Set TextStream = FSO.OpenTextFile(".\Rezult.txt", 2, True)
TextStream.WriteLine V_DateLast
TextStream.Close
WScript.Quit(0)
End if
' Если текущее значение [DT] не равно предыдущему (произошли изменения в папке), то выводим сообщение
'-------------
If StrComp(V_DateLast, Str,1) <> 0 then
MsgBox "Произошли изменения в папке: " & InPath
'... и открываем папку
Set objShellApp = CreateObject("Shell.Application")
objShellApp.Explore(InPath)
Set TextStream = FSO.OpenTextFile(".\Rezult.txt", 2, True)
TextStream.WriteLine V_DateLast
TextStream.Close
WScript.Quit(0)
End If
'WScript.Echo "Конец"
WScript.Quit(0)
'************************* Конец ***********************************
... и добаваляем запуск файла в планировщик Назначенные задания с требуемым интервалом.
Re: VBScript. Проверка на изменение в папке
Добавлено: 19 июн 2020, 13:33
Гость
Можно попросить код с проверкой файла EXE и если он изменился то выполнить Batnik.bat.