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

Вниз

Очередь сообщений   Найти похожие ветки 

 
Holy ©   (2003-02-27 12:08) [0]

Помогите решить следующую проблему !!! Есть программа от третьего производителя, которая после некоректного завершения работы долго переиндексирует БД. Надо из ее очереди сообщений удалить посылаемые ей WM_QueryEndSession и WM_EndSession другой программой.


 
Holy ©   (2003-02-27 13:38) [1]

Up!
Помогите, пжалста !!!


 
Clickmaker ©   (2003-02-27 13:44) [2]

глупый вопрос - а зачем удалять посылаемые ей WM_QueryEndSession и WM_EndSession другой программой ?


 
Holy ©   (2003-02-27 13:51) [3]

2Clickmaker

Дело в том, что эта прога не в исходниках и соответственно ничего в ней я изменить не могу. Но прежде чем она будет закрыта надо проследить, что все условия выполнены и действительно можно перегрузить машину.


 
Clickmaker ©   (2003-02-27 13:53) [4]

а как проверяется, что все условия выполнены ?


 
Holy ©   (2003-02-27 13:59) [5]

2Clickmaker

Моя программа следит за одним или несколькими файлами журналов по-моему (проект пишется на двоих поэтому кусок контроля мне до конца не известен)


 
Clickmaker ©   (2003-02-27 14:02) [6]

Так скорей всего твоя программа должна поймать WM_QUERYENDSESSION и не возвращать TRUE, пока не убедится, что все Ок. Как уверяет MS, винда не вырубится пока все приложения не вернут TRUE в ответ на это сообщение.


 
Holy ©   (2003-02-27 14:08) [7]

2Clickmaker

Да, но это сообщение отправляется всем програм и на момент, когда мне достанется Query ей может уже прийти EndSession.
Поэтому я считаю, что нужно следить за очередью событий для той проги, но я не знаю как из нее убрать чего не нужно


 
Clickmaker ©   (2003-02-27 14:14) [8]

и то правда...
Тогда ставить хук в DLL
SetWindowsHookEx(WH_GETMESSAGE, ...
определить hwnd "плохой" программы и отсеивать WM_ENDSESSION
Другого варианта не вижу


 
Holy ©   (2003-02-27 14:19) [9]

И тогда вопрос как исправить очередь событий другого приложения ?


 
Clickmaker ©   (2003-02-27 14:46) [10]

PeekMessage(Msg, ... ,PM_REMOVE)



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

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

Наверх




Память: 0.48 MB
Время: 0.013 c
1-54569
spark81
2003-04-06 12:19
2003.04.17
курсор


6-54776
Sils
2003-02-24 09:45
2003.04.17
Помогите пожалуйста !!! Очень нужно !!!


3-54526
den_777
2003-03-31 08:02
2003.04.17
DBExpress и EXCEPTION


1-54742
volph
2003-04-06 10:27
2003.04.17
Хранение текстовых данных как в Ini-файле, но


1-54565
Glivinsky
2003-04-07 00:46
2003.04.17
Как определить раскладку клавиатуры ?