Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.10.2011, 07:31   #1
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию Слежение за файлами

Добрый день! Пытаюсь решить следующую задачу. Шаги действия в ней таковы:
1. Нужно получать список файлов в директории с определенным расширением;
2. Заносить их меня в MDB файл БД + дата и время их появления в указанной директории;
3. Выполнять каждые 5 минут сканирование директории и проверять существование найденных файлов и если они есть, то обновлять БД дату и время, когда они были найдены в этой директории;
4. Если ранее найденный файл перестал существовать, то обновить БД дату и время, когда перестал данный файл существовать в директории.
С пунктом №1 нет проблем. С №2 думаю, как-то разберусь. Первую часть пункта №3 тоже реализую. Не знаю как сделать вторую часть пункта №3 и полностью пункт №4. Буду рад и признателен за помощь с этим.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 02.10.2011, 10:05   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
дата и время их появления в указанной директории;
=дата время сканирования?
Цитата:
обновлять БД дату и время, когда они были найдены в этой
=дата время сканирования?
Цитата:
дату и время, когда перестал данный файл существовать в директории.
=дата время сканирования?


если так то
внесли(обновили) данные (времясканирования) для имеющихся.
теперь все где датавремя < времясканирования это УДАЛЕННЫЕ когда-то.
А если у них нет отметки об удалении, то это последние удаленные.

update tbl dattedel=DT where
datedel is NULL нет отметки об удалении в прошлый раз
and datecheck <DT ---дата зарузкиобновления <времясканирования

Цитата:
2. Заносить их меня в MDB файл БД + дата и время их появления в указанной директории;
3. Выполнять каждые 5 минут сканирование директории и проверять существование найденных файлов и если они есть, то обновлять БД дату и время, когда они были найдены в этой директории;
может так
2. если они есть, то обновлять БД дату и время, когда они были найдены в этой директории
3 если нет то Заносить их меня в MDB файл БД + дата и время их появления в указанной директории
4. обновить данные об удаленных. (см выше).
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 02.10.2011 в 10:25.
evg_m вне форума Ответить с цитированием
Старый 02.10.2011, 10:35   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Выполнять каждые 5 минут сканирование директории
абсолютно НЕ рационально!
Если не предполагается работоспособность программы на Windows 95/98 - то лучше воспользоваться подпиской на изменения в файловой системе - тогда сама операционка сообщит, если в папке что-то изменилось.
Ищите (прежде всего по форуму) по ключевому слову:
ReadDirectoryChangesW

ну, для старта посмотрите вот эти темы:
http://www.programmersforum.ru/showp...06&postcount=3

http://www.programmersforum.ru/showthread.php?t=109749
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
слежение за буфером kroŧ Общие вопросы Delphi 5 06.04.2012 12:10
Слежение за открытием файлов Towlier Помощь студентам 1 24.04.2011 00:13
Слежение за целостностью оборудования BLACKheart Win Api 4 27.10.2008 08:17
Слежение за движущимся обьектом TOR Общие вопросы Delphi 1 31.05.2007 18:28
слежение за файлами Umen Общие вопросы Delphi 3 17.11.2006 12:38