um tempo atrás, algo estranho começou a acontecer, ao pressionar Ctrl ou Alt Gr o foco é alterado. Eu encontrei vários recursos que não abordam como encontrar o processo real, mas sim como impedir que os aplicativos façam isso, o que não parece ser uma boa solução.
Mais uma vez, eu pesquisei e não encontrei nada além de hacks para o problema real, isso é não uma duplicada.
Eu preparei um pequeno aplicativo que detecta quando o foco muda. Tanto quanto eu posso dizer, isso acontece em todos os aplicativos que eu instalei. Abaixo está uma cópia da janela de saída do Visual Studio (com o aplicativo que eu configurei em execução):
Como eu reproduzi o problema:
- Focalizou manualmente a janela do Bloco de Notas (o log # 1 apareceu).
- Pressionado ctrl, tanto o log relacionado ao thread quanto o log # 2 apareceram.
Conteúdo da janela de saída:
1 - Pega de janela: 723652 | Processo: notepad | Janela: Sem título - Bloco de Notas | Exe arquivo: C: \ Windows \ system32 \ notepad.exe O thread 0xafc foi encerrado com o código 259 (0x103). 2 - Maçaneta de janela: 526994 | Processo: notepad | Janela: Sem título - Bloco de Notas | Exe arquivo: C: \ Windows \ system32 \ notepad.exe
O que eu tentei:
- Após o foco ser perdido pressionando ALT + F4 , tentando fechar o processo. [antes de chegar com o aplicativo].
- Utilizou o Process Explorer para tentar identificar o processo (mas, como não consigo fechá-lo, não há ajuda)
O que eu acho que está acontecendo:
- Desde quando o problema ocorre, nenhum outro processo está recebendo o foco, ele deve estar atribuindo a ele um valor nulo e reatribuindo à janela antiga, mesmo que ele não reconquiste o foco, mas de acordo com o aplicativo; isto é: a borda está esmaecida e não consigo interagir com a janela a menos que eu a clique novamente, embora ela deva ser focalizada novamente.
O que posso fazer para identificar o processo e não apenas impedir que os aplicativos mudem o foco?
fonte