Artigo: 142415 - Última revisão: terça-feira, 9 de Dezembro de 2003 - Revisão: 2.0 PROBLEMA: Processador de mensagens MFC não é chamado com PostThreadMessage()
Nesta páginaSintomasQuando o código utiliza a função PostThreadMessage() Win32, os processadores de mensagem MFC não são invocados. CausaQuando chama PostThreadMessage(), a mensagem é colocada na fila de mensagens do thread. No entanto, uma vez que as mensagens colocadas desta forma não estão associadas uma janela, MFC irá não despacho-los para processadores de mensagem ou o comando. Para processar estas mensagens, substituir a função PreTranslateMessage() a classe derivada de CWinApp e processar as mensagens manualmente. ResoluçãoO seguinte código demonstra como chamar PostThreadMessage() InitInstance() da classe derivada de CWinApp utilizando uma aplicação single-threaded. A regra é o mesmo para threads secundários, excepto que o código aqui apresentado ser colocaria in a classe derivada de CWinThread alternativa. Visual C++ 4.2 suporta o processamento de mensagens colocadas threads. Para mais informações, consulte ON_THREAD_MESSAGE na documentação do Visual C++ 4.2. Nota : os threads de trabalho MFC não tem uma mensagem de ciclo/Bomba associada pelo que deve utilizar um thread de interface de utilizador. Código de exemploReferênciasPara mais informações sobre o objecto CWinThread, consulte o seguinte: enciclopédia MFC, o multithreading: criar threads de interface de utilizador. A informação contida neste artigo aplica-se a:
Tradução automáticaIMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado. Clique aqui para ver a versão em Inglês deste artigo: 142415
(http://support.microsoft.com/kb/142415/en-us/
)
| Outros Recursos Outros Sites de Suporte
ComunidadesTraduções de Artigos |






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email



Voltar ao topo