Pergunta

Isto está intimamente relacionado a um anteriormente questão .

No mundo geridos:

  • Como posso verificar se o segmento atual tem mensagens em sua fila de mensagens?
  • Como posso ceder à OS e espera para uma mensagem no thread atual (Como GetMessage ou WaitMessage)?

Eu estou procurando os equivalentes geridos sem PInvoke.

Foi útil?

Solução

Você pode usar o href="http://msdn.microsoft.com/en-us/library/system.windows.forms.application.addmessagefilter.aspx" rel="nofollow noreferrer"> função AddMessageFilter

Eu não acho que há uma maneira de bloqueio como fazer isso sem P / Invoke, uma vez que está além intenções de .NET.

Outras dicas

Você poderia substituir WndProc e, em seguida, disparar o seu próprio evento quando ele é chamado. Isto, naturalmente, não seria de bloqueio. Se você deseja bloquear até que uma mensagem, você poderia ter um método em outro espera linha em um objeto de sincronização e têm o sinal WndProc esse objeto.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top