Windows XP - Aplicativos destinados a "estourar na frente" não o fazem

1

Existe um aplicativo que rodamos, o qual, em algumas máquinas XP, aparece na frente de todo o resto, quando precisa da atenção do usuário. É um aplicativo que permite que você faça isso.

Ele faz isso em algumas máquinas XP, mas não em outras. Falei com a empresa que cria o software e está além de sua ajuda. Então estou pensando que é uma coisa do sistema operacional. Daí minha postagem aqui.

Existe algo dentro do sistema operacional (talvez dentro do registro) que pode ser alterado para permitir que uma janela de aplicativo roube o foco e chegue à frente se sua própria programação tentar fazer isso.

    
por MrVimes 10.03.2012 / 11:05

1 resposta

0

O comportamento da SetForegroundWindow A API foi alterada no Windows 2000. Antes, era permitido que os aplicativos "estourassem em frente" como eles escolhiam, agora há restrições.

Se for realmente SetForegroundWindow() (verifique novamente com os desenvolvedores do seu software), você pode tentar definir o parâmetro SPI_SETFOREGROUNDLOCKTIMEOUT como zero usando SystemParametersInfo . Não tenho certeza de como fazer isso por meio de uma modificação no registro, sem realmente chamar essa API.

Observe que prefiro evitar definir um parâmetro de todo o sistema para fazer com que um único aplicativo se comporte bem. As restrições SetForegroundWindow estão disponíveis por tempo suficiente, então a empresa em desenvolvimento deve ter tido tempo suficiente para fazer algo a respeito.

    
por 10.03.2012 / 14:37

Tags