Fórum Processo de mensagens do Windows #285867

23/06/2005

0

Olá!
Considerando o código abaixo, como posso tratar as mensagens do Windows?
for i:= 0 to Count do
begin
    If..... blabla.... then
    .
    .
    else if blablabla.... then
    .
    .
    .
    Application.ProcessMessages;
end;

Exemplo: Suponha que durante a execução do ´for´ acima, o Windows tenha recebido uma mensagem de conexão socket, direcionada ao meu programa claro, e que eu precise tratar esta mensagem.

[b:78b0b41464]O problema[/b:78b0b41464]: Como eu faço para saber que o Windows tem essa determinada mensagem na fila?

Valeu
wbb


Wbb

Wbb

Responder

Posts

23/06/2005

Massuda

Pelo que eu entendo, o Application.ProcessMessages irá processar [b:f1f5ccd5d2]todas[/b:f1f5ccd5d2] as mensagens pendentes para o seu programa.

O que pode acontecer é que devido ao tempo decorrido entre as chamadas a Application.ProcessMessages, sua comunicação poderá falhar devido a demora no programa em responder ao evento do socket (timeouts na outra ponta da comunicação).


Responder

Gostei + 0

23/06/2005

Beppe

[b:e20d916165]O problema[/b:e20d916165]: Como eu faço para saber que o Windows tem essa determinada mensagem na fila?

var
  Msg: TMsg;
...
PeekMessage(Msg, 0, WM_SUAMENSAGEM, WM_SUAMENSAGEM, PM_NOREMOVE)



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar