ПОНЯТНО О Visual Basic NET (том 3)


Программа-шпион - часть 3


        Шпион.IncludeSubdirectories = True

Далее мы объясняем, что нас интересуют все файлы. Для этого мы настраиваем фильтр аналогично тому, как настраивали фильтр диалогового окна (20.2.2):

        Шпион.Filter = "*.*"

Следующие 4 оператора указывают на обработчиков четырех событий объекта Шпион: Created, Deleted, Renamed, Changed. Рассмотрим обработчики по порядку.

Событие Created генерируется при создании файла или папки. Параметр обработчика e принадлежит к типу FileSystemEventArgs и содержит информацию о событии. Его свойство FullPath  представляет полный адрес и имя созданного файла или папки.

Все 4 обработчика обращаются к процедуре пользователя Дописываем_в_файл, которая оператором Дозапись.WriteLine дописывает в файл Журнал.txt одну строчку. Начинается строчка с указания момента времени, когда наступило событие (DateTime.Now), а заканчивается текстом, задаваемым параметром Строка, формируемым каждым обработчиком.

В обработчике события Changed этот текст такой:

"Создан файл или папка:  " & e.FullPath

Событие Deleted генерируется при уничтожении файла или папки. Организован обработчик аналогично предыдущему.

Событие Renamed генерируется при переименовании файла или папки. Организован обработчик аналогично предыдущим с одним отличием. Параметр обработчика e принадлежит к типу RenamedEventArgs. Его свойство OldFullPath представляет полный старый адрес и имя файла или папки, а свойство FullPath представляет полный новый адрес и имя переименованного файла или папки.

Событие Changed генерируется при различных изменениях в файле или папке, например, когда содержимое файла изменилось. Организован обработчик аналогично обработчику Created.

Нужно иметь в виду, что при некоторых действиях с файлами или папками возникает сразу несколько событий. Например, перемещение файла в другую папку есть стирание этого файла в одном месте, создание его в другом и изменения внутри папки.

Не забудьте, что шпиону нужно разрешить генерировать события:

        Шпион.EnableRaisingEvents = True

А теперь о секретности работы шпиона. Я добился ее тем, что сделал форму прозрачной и запретил значку формы появляться на панели задач:

        Me.Opacity = 0

        Me.ShowInTaskbar = False




Начало  Назад  Вперед



Книжный магазин