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?
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
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
Curtir tópico
+ 0
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).
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
Clique aqui para fazer login e interagir na Comunidade :)