O que esses códigos WndProc significa?
Pergunta
Eu estou tentando fazer uma janela que fecha quando clicar fora dele , e no momento eu estou olhando para fazer isso por lidar com a função WndProc.
Nenhuma das mensagens que estou recebendo até agora parecem úteis, mas há alguns que eu não entendo nada. O que códigos 0x0118, 0xC123, 0xC128 e 0xC12E representa?
Solução
0x0118: WM_SYSTIMER (indocumentados) usado para acento circunflexo pisca
Os outros três devem ser de aplicação mensagens definidas (qualquer coisa na faixa 0xC000 a 0xFFFF) para que você não vai encontrar aqueles em qualquer lugar definido.
Outras dicas
Uma maneira fácil seria apenas para capturar o mouse. Quando você tem o mouse capturado você receber um evento de clique fora de sua janela, então capturando é desligado.
A maneira mais difícil seria a criação de um baixo nível janelas rato gancho. Para fazer um gancho global, você vai ter que colocar o seu código de gancho em uma DLL não gerenciada.
A realmente maneira fácil seria apenas perto seu formulário quando ele está desativado.
Editar :
Opa. Eu só percebi que eu não responder a sua pergunta direta sobre as identificações de mensagens. Mensagem 0x118 não está definido no WinUser.h, então eu suponho que é um ID de mensagem não documentada. IDs de mensagens na faixa 0xC000 a 0xFFFF são mensagens definidos pelo aplicativo. Essas identificações são devolvidos pelo RegisterWindowMessage
.