Показать сообщение отдельно
  #1  
Старый 14.09.2006, 16:21
Аватар для 4kusNick
4kusNick 4kusNick вне форума
Местный
 
Регистрация: 06.09.2006
Адрес: Россия, Санкт-Петербург
Сообщения: 444
Репутация: 550
Печаль Альтернатива Application.ProcessMessages

Доброго всем времени суток!
Не знаю, правильно ли я поступил, поместив этот пост в данный топик, но, все-таки этот вопрос напрямую относится к области функционирования ядра системы.

Речь идет о том, чтобы отыскать алго, альтернативный Application.ProcessMessages, то есть, который бы позволял ОСи и программе обменяться сообщениями, которые находятся "в очереди" на обработку.

Сейчас использую такой алго:

Код:
if PeekMessage(Msg, 0, 0, 0, PM_REMOVE) then
begin
  TranslateMessage(Msg);
  DispatchMessage(Msg);
end;

Но этот код дааалеко не альтернатива для Application.ProcessMessages =)
В сях я это дело писал так:
Код:
CWinThread * pThread = AfxGetThread(); 
MSG msg;

while (PeekMessage(&msg,NULL,0,0,PM_NOREMOVE)) if (!pThread->PumpMessage()) break; 

и как это перетащить на паскаль (Delphi) не понимаю

Почему я не хочу юзать ProcessMessages, да потому, что, по-крайней мере, в седьмой версии Delphi, эта процедура частенько вызывает ошибки ни с того ни с сего, причем только на некоторых машинах.
__________________
THE CRACKER IS OUT THERE
Ответить с цитированием