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

Не срабатываю методы OnClose и OnCloseQuery   Найти похожие ветки 

← →
RU-mata ©   (2010-03-14 18:41) [0]

Такая проблема:
Не срабатывают методы OnClose и OnCloseQuery
при закрытие формы через панель задач
(правый клик на вкладке программы в панели задач,
пунки "Х Закрыть    Alt+F4" )
При стандартном заыкрытии формы
(клик на  Х в правом верхнем углу формы
или Alt-F4) методы OnClose и OnCloseQuery срабатывают как положено.
Подскажите в чём может быть дело.
Спасибо.


← →
Fenik ©   (2010-03-14 22:28) [1]

Ищи у себя ошибку. Всё работает.


← →
Fenik ©   (2010-03-14 22:30) [2]

> Всё работает.

D7, WinXP SP3.


← →
Rouse_ ©   (2010-03-15 00:00) [3]


> Не срабатывают методы OnClose и OnCloseQuery
> при закрытие формы через панель задач

Телепатически вижу что панель задач - это диспетчер процессов (Task Manager) на закладке Процессы (Processes). Если я правильно прочитал вводную, то, при терминировании процесса, OnCloseQuery стесняется выполняться.


← →
Rouse_ ©   (2010-03-15 00:02) [4]

ЗЫ: проверил, Alt+А4 сработал в обоих случаях...


← →
Германн ©   (2010-03-15 01:36) [5]


> при терминировании процесса, OnCloseQuery стесняется выполняться.
>
> <Цитата

Какое там стесняется! Процессу и "пикнуть не дозволяется". :)


← →
evvcom ©   (2010-03-18 17:51) [6]


> Процессу и "пикнуть не дозволяется". :)

Ну это если он повис, то да :)


← →
Rouse_ ©   (2010-03-18 18:17) [7]


> evvcom ©   (18.03.10 17:51) [6]
>
>
> > Процессу и "пикнуть не дозволяется". :)
>
> Ну это если он повис, то да :)

При терминировании это монопенисюально - висит он или нет :)


← →
Германн ©   (2010-03-19 02:51) [8]


> Rouse_ ©   (18.03.10 18:17) [7]
>
>
> > evvcom ©   (18.03.10 17:51) [6]
> >
> >
> > > Процессу и "пикнуть не дозволяется". :)
> >
> > Ну это если он повис, то да :)
>
> При терминировании это монопенисюально - висит он или нет
> :)
>

Хорошо звучит.
Но вот Саш. Что делать если он "висит"? И диспетчер задач не может его "убить"?
Это не вирус, не "зловредная программа".
Это, блин, программа работающая с СОМ-портом. В синхронном режиме. А значит с доппотоками.


← →
Вариант   (2010-03-19 06:59) [9]


> Германн ©   (19.03.10 02:51) [8]


> Это, блин, программа работающая с СОМ-портом. В синхронном
> режиме. А значит с доппотоками.


1)  Работать асинхронно
или
2) Выставить разумные тайм-ауты

Первый метод работает в любом случае, проблем с "висит" нет.
Второй возможно (не проверял) все равно будет иметь проблемы при использовании WaitCommEvent(если таковой вызов есть),
но ReadFile и WriteFile при наступлении тайм-аутов вернут управление .


← →
evvcom ©   (2010-03-19 10:41) [10]


> При терминировании это монопенисюально - висит он или нет :)

При терминировании согласен - моно :)

Только, по-моему, диспетчер задач не применяет сразу терминирование, а пытается все-таки закрыть процесс корректно, и только если процесс не хочет по-доброму, тогда только идет на крайние меры, получив согласие от пользователя.


← →
Rouse_ ©   (2010-03-19 11:16) [11]


> Только, по-моему, диспетчер задач не применяет сразу терминирование,
>  а пытается все-таки закрыть процесс корректно

Это если снимать с закладки "приложения", я обычно работаю из закладки "процессы" :)


← →
evvcom ©   (2010-03-19 11:54) [12]

Сань, ну ты крут! :)))



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

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



Память: 0.48 MB
Время: 0.004 c
2-1308227087
sanekin3737
2011-06-16 16:24
2011.10.09
CGI и базы данных


2-1308471338
Pepe
2011-06-19 12:15
2011.10.09
TThread - Хм....Виснет однако....


15-1308313863
RGV
2011-06-17 16:31
2011.10.09
Реализация подсказки типа DropDownList.


1-1263893750
midikey
2010-01-19 12:35
2011.10.09
Подобие написания/выполнения скрипта


15-1308342599
Юрий
2011-06-18 00:29
2011.10.09
С днем рождения ! 18 июня 2011 суббота




   Наверх