Форум: "WinAPI";
Текущий архив: 2002.08.26;
Скачать: [xml.tar.bz2];
Вниз
Как перехватить сообщение 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 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.08.26;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c