Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.26;
Скачать: CL | DM;

Вниз

Как перехватить сообщение Windows при создании файла?   Найти похожие ветки 

 
Nimbus   (2002-06-20 09:52) [0]

Помогите, plz, кто сталкивался с данной проблемой:
Необходимо перехватывать (постоянно) событие (сообщение?) WinNT когда на диске (например, "с:") создаётся файл с заранее известным именем (например, "tmp.001"), НЕ ЗАГРУЖАЯ процессор на 100%, что как раз и делает следующий код, если его зациклить.
if FileExist("c:\tmp.001") then //какие-либо действия
Результат достигается, но КАК ПОЗВОЛИТЬ ещё и другим прогам работать без тормозов???
ЗАРАНЕЕ БЛАГОДАРЕН, Nimbus.


 
RV   (2002-06-20 11:09) [1]

FindFirstChangeNotification - посмотри
или в цикл application.processmessage вставь
или по таймеру опрашивай с большим интервалом
или перехват API на создания файла напиши(и мне дай)


 
Игорь Шевченко ©   (2002-06-20 14:21) [2]

www.sysinternals.com - filemon.exe, filesrc.zip


 
Nimbus   (2002-06-20 23:30) [3]

2 Игорь Шевченко: За исходники на C++ спасибо, конечно, но хотелось бы примерчик на Паскале увидеть.
Или хотя бы немного поконкретнее (с чего начать, принцип реализации кода), чем RV написал.


 
RV   (2002-06-21 08:38) [4]

в цикл application.processmessage вставь - чего уж конкретнее
FindFirstChangeNotification - в хелпе есть (тоже чиста-чиста, конкретно-конкретно)
и вообще код приведи побольше


 
RV   (2002-06-21 08:51) [5]

application.processmessage S - конечно же.
я обычно так делаю, когда делать неохота

procedure TForm1.Timer1Timer(Sender: TObject);
begin
timer1.Enabled:=false;
Application.ProcessMessages;
MySuperPuperFunction;
timer1.Enabled:=true;
end;


 
Игорь Шевченко ©   (2002-06-21 10:28) [6]

Nimbus (20.06.02 23:30)

Тот способ, на который я дал ссылку, AFAIK, гарантировано перехватывает всякие действия с файлами.
Может быть, действительно проще FindFirstChangeNotification ?

Или установить таймер и по таймеру проверять if FileExists(...) then

С уважением,


 
Nimbus   (2002-06-21 15:12) [7]

Спасибо вам за советы (Игорь Шевченко и RV) - с вашей помощью проблема решена!!!

С уважением, Nimbus



Страницы: 1 вся ветка

Текущий архив: 2002.08.26;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.019 c
4-85289
svmagnum
2002-05-29 04:33
2002.08.26
kak ubrat scroll bari v twebbrowsere.


6-85162
Nikollay
2002-06-14 19:49
2002.08.26
Как отловить ClientSocket1->Open() ???


14-85192
Jee
2002-07-30 15:32
2002.08.26
Оцените прикол.


14-85258
Alex Shulg
2002-07-31 18:01
2002.08.26
Подсказка для объектов формы


1-85109
AlexCement
2002-08-15 08:10
2002.08.26
Работа с верхним и нижним индексом текста