Como eu faço uma aplicação imune a 'show desktop'?

3

Existe alguma maneira que eu possa especificar para uma aplicação em particular para nunca ser escondida quando pressiono Tecla Windows + D ou clico em mostrar área de trabalho no Windows 7?

    
por Michael Galos 07.06.2010 / 10:18

1 resposta

4

Não há uma maneira fácil de fazer isso ou um aplicativo que forneça a funcionalidade de que você precisa. A direção que eu tomaria é escrever um pequeno script AutoIT com um loop infinito, tornando a janela constantemente ativa.

Exemplo 1

    While 1
      For $i = 1 To 100
    WinActivate("[CLASS:Notepad]", "")
Next
Sleep(100)
WEnd

* Este exemplo manterá a classe de janela "Notepad" continuamente ativa, mesmo se o botão show desktop for clicado WinActivate foca na janela especificada. Eu adicionei um sono de 100MS para não usar 100% de uso da CPU.

Dependendo do idioma usado para criar o aplicativo que não se esconderia em "show desktop", pode-se ligar o evento form_resize (In VB6 Language) e, se acionado, mostrar a janela do aplicativo conforme isso é acionado no win + d ou "Show Desktop".

Gostaria apenas de criar um pequeno script no Autoit (a solução mais fácil).

Boa sorte

EDIT: Como "Bavi_H" sugerido, também é possível definir continuamente o estado "Window" como "Restaurado" substituindo o seguinte

WinActivate("[CLASS:Notepad]", "")

PARA

WinSetState("[CLASS:Notepad]", "", @SW_RESTORE)
    
por 07.06.2010 / 11:18