Вниз
Скачать: CL | DM;

Как завершить работу приложения   Найти похожие ветки 

← →
stasSSW   (2003-12-30 23:14) [0]

Приложение должно работать постоянно: сканировать директорию на предмет появления файлов по определенной маске и выдавать сигналы при их появлении. Как оформить приложение, чтобы в какой-то момент времени (не всегда постоянный) приложению можно было передать какой-то сигнал или событие, чтобы оно завершило работу? Заранее спасибо, мастерам.


← →
jack128 ©   (2003-12-31 00:29) [1]

Основной поток имеет цикл обработки сообщений? Если, да то пошли ему WM_QUIT..


← →
stasSSW   (2003-12-31 13:43) [2]

jack128, не предполагалось, но если нет другого варианта, то придется сделать. Спасибо


← →
kostik   (2004-02-06 11:55) [3]

Пошли на хэндл главного окна этого приложения сообщение WM_CLOSE
SendMessage(hWnd,WM_CLOSE,0,0);
hWnd - определяется с помощью FindWindow(nil,заголовок окна);


← →
jack128 ©   (2004-02-06 13:01) [4]


> stasSSW   (31.12.03 13:43) [2]
ну тогда можно использовать объекты синхронизации (Events, например)


← →
Suntechnic ©   (2004-02-07 09:05) [5]

Дополню jack128 ©   (06.02.04 13:01) [4].

Чтобы обойтись без цикла сообщений создаёшь объект межпроцессорной синхронизации (например, как здесь уже советовали, Event) и, как я понимаю, используешь FindFirstChangeNotification(FindNextChangeNotification). Далее оба хэндла используешь в ф-ции WaitForMultipleObjects с 3-им параметром false. При переходе одного из этих объектов в signaled состояние выполнение потока возобновиться. Что именно произошло (либо действия с файлами либо команда извне о завершении) можно узнать анализируя возвращаемое ф-цией значение (подробности в справке).



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
14-1078597165
Marser
2004-03-06 21:19
2004.04.11
Только что Луну рассматривал в трубу


1-1079891707
Oleg_
2004-03-21 20:55
2004.04.11
Активизация вебброузера программная


4-1078997925
BiN
2004-03-11 12:38
2004.04.11
"Вклиниться" в адр. пространство библиотеки до выполнения Dllmain


6-1079173998
Daimon
2004-03-13 13:33
2004.04.11
Компьютер (COM порт) <-> Сотовый телефон (Модем AT-команды )


9-1065440122
@ndrew
2003-10-06 15:35
2004.04.11
спрайты и DelphiX ...




   Наверх