Форум: "Начинающим";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];
ВнизКак лучше сделать! Найти похожие ветки
← →
Ingwar © (2006-10-28 20:51) [0]Проблема такого плана: Есть чужая программа которая создает и изменяет файлы. Моя задача прочесть эти файлы, после их создания или очередного изменения.
Сейчас я сделал через таймер, т.е. переодически опрашиваю каталог на появление нового файла, или на обновление уже имеющихся.
Вопрос: Можно ли это сделать более оптимально?
← →
TUser © (2006-10-28 21:03) [1]Можно. Надо использовать АПИ-функции
FindFirstChangesNotification, ect
ReadDirectoryChangesW
← →
Ingwar © (2006-10-28 21:17) [2]ТО TUser: Эти функции будут срабатывать как события?
← →
Ketmar © (2006-10-28 21:23) [3]справку читал? там всё английским по winhelp разжёвано. что не разжёвано -- то есть на http://msdn.com/
%-)
← →
Ketmar © (2006-10-28 21:23) [4]ты сначала напиши нерабочий код, потом приходи с ним сюда: будем больно бить и учить уму-разуму. %-)
← →
Anatoly Podgoretsky © (2006-10-28 21:31) [5]Не рискнул бы работать с подобным, легко потерять все данные. А определить окончание работы не представляется возможным, работа может быть бесконечной.
Максимум, что можно сделать, чтобы обезопасить себя, так это открывать в монопольном режиме, но в этом случае другая программа может пострадать.
← →
Ingwar © (2006-10-28 21:36) [6]У меня код рабочий, но меня он не устраивает.... Я хочу оптимизировать =)
Я хочу чтобы моя программа реагировала сразу по изменению файла... Мне хотелось бы как-нить event на это дело повесить =)
← →
Ketmar © (2006-10-28 21:41) [7]
The FindFirstChangeNotification function creates a change notification handle and sets up initial change notification filter conditions. A wait on a notification handle succeeds when a change matching the filter conditions occurs in the specified directory or subtree.
ключевые слова --A wait on a notification handle
.
итого: поток. CreateEvent()/PulseEvent(). PostMessage(). да что угодно, в принципе.
← →
Ingwar © (2006-10-28 22:00) [8]В справке на мою Дельфю этого нету!!! Может мне поставить себе что-нить другое вместо D7...
← →
Ketmar © (2006-10-28 22:03) [9]>[8] Ingwar(c) 28-Oct-2006, 22:00
>В справке на мою Дельфю этого нету!!!
а я вот как раз оттуда цитировал... загадка?
← →
Ingwar © (2006-10-28 22:18) [10]А у меня нету!!!! У меня при наборе в справке FindFirstС... - все глухо =( Аналогично и при наборе ReadDirectoryChangesW. Так что если к этим функциям есть example киньте в меня плиз. Потому что я даже не знаю какие у них есть параметры и т.д.
← →
Zeqfreed © (2006-10-28 22:18) [11]
> В справке на мою Дельфю этого нету!!! Может мне поставить
> себе что-нить другое вместо D7...
Тетрис?
← →
Орион © (2006-10-28 22:31) [12]> [10] Ingwar © (28.10.06 22:18)
не ту справку запускаешь.
← →
Ingwar © (2006-10-28 22:39) [13]Ура!!!! Яндекс вывел ссылку на сайт Мастера Дельфи по названию функции... Урррраааа!
← →
Ketmar © (2006-10-28 22:41) [14]>[10] Ingwar(c) 28-Oct-2006, 22:18
а кто тебе наврал, что это функции Delphi? это WinAPI.
← →
имя (2006-10-28 22:43) [15]Удалено модератором
← →
имя (2006-10-28 22:45) [16]Удалено модератором
← →
Ingwar © (2006-10-30 13:58) [17]ТО Ketmar: Может литературу или автора по WinAPI посоветуешь...
И нечего на меня наезжать... Если бы я знал что-такое WinAPI, то я бы и задал вопрос в другом форуме, а не в этом!
PS. Надеюсь никого не обидел. И очень надеюсь, что получу подсказку.
← →
MikePetrichenko © (2006-10-30 14:01) [18]
> ТО Ketmar: Может литературу или автора по WinAPI посоветуешь.
> ..
> И нечего на меня наезжать... Если бы я знал что-такое WinAPI,
> то я бы и задал вопрос в другом форуме, а не в этом!
"В сад. Все в сад" (С)
> PS. Надеюсь никого не обидел. И очень надеюсь, что получу
> подсказку.
См. выше.
← →
MikePetrichenko © (2006-10-30 14:02) [19]
> Ketmar © (28.10.06 21:23) [4]
И гиде тема где я штуку баксов прое...?
← →
Ketmar © (2006-10-30 15:49) [20]>[17] Ingwar(c) 30-Oct-2006, 13:58
а я тебя считал адекватным. и с мозгами... скажи, что ты пошутил так неудачно.
хинт: всю необходимую информацию я дал. или записать и тебя в "надмозги"?
>[19] MikePetrichenko(c) 30-Oct-2006, 14:02
>И гиде тема
у меня в базе. %-)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.11.19;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.047 c