Aplicativo para alternar automaticamente entre dois aplicativos no Windows [fechado]

4

Existe um aplicativo que fará com que o computador alterne (traga para o foco) entre dois aplicativos diferentes, em um timer? Isso é para o Windows 7.

Eu preciso disso para uma tela que será exibida publicamente para os clientes. Eu quero que a tela alterne entre dois aplicativos diferentes, digamos, 30 segundos. Eu acho que há empresas suficientes lá fora, os monitores voltados para o cliente nos dias de hoje que algo simples como isso deve existir!

    
por OverloadUT 24.08.2011 / 23:20

5 respostas

9

Sim, é chamado de AutoIt .

Você usaria algo assim:

While 1 ;loop indefinitely
    WinActivate("notepad","") ;give focus to notepad
    Sleep(30000) ;sleep 30 seconds
    WinActivate("wordpad","") ;give focus to wordpad
    Sleep(30000) ;sleep 30 seconds
WEnd

WinActivate () dá foco à janela com título exato ou mais próximo, nos casos em que há dois que se encaixam, ele dá foco ao mais recentemente ativado. Sleep () está em milissegundos, então 30000 é 30 segundos.

    
por 24.08.2011 / 23:33
4

AutoTab é muito simples.

link

    
por 04.04.2012 / 19:10
2

Se não houver interação entre os clientes e as telas / aplicativos, basta tirar uma captura de tela dos programas e criar uma apresentação de slides simples com um temporizador de 30 segundos e repetição sem fim.

Geralmente, as empresas que usam monitores voltados ao cliente que exibem programas para fins de propaganda não usam programas "ao vivo". Você quer controlar a interface e permitir que a chance de algum erro aparecer não é o que você deseja. Eles gravam vídeos de tela dos programas em funcionamento ou capturam capturas de tela para exibição estática.

Caso contrário, há painéis específicos usados que exibem informações específicas, e estes não são alternados entre, geralmente. Ou, eles são trocados usando equipamentos A / V para que cada programa seja executado em um computador diferente, de modo a minimizar, mais uma vez, a chance de falha.

    
por 24.08.2011 / 23:22
2

Por que instalar um programa (como o AutoIt) quando o Windows pode fazer isso da caixa?

Salve o seguinte em um arquivo chamado auto_switch.vbs :

Option Explicit
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
Do
    WScript.Sleep 30000
    WshShell.SendKeys("%{TAB}")
Loop

Altere o 30000 para o número de milissegundos (30000 = 30 segundos) entre as impressoras Alt + Tab. Clique duas vezes para começar a correr.

Se você quiser pará-lo, então você precisa matar o processo chamado "wscript".

Se você quiser alternar entre programas nomeados explicitamente, esse código alternará entre "Caixa de entrada - Microsoft Outlook" e "Firefox" a cada 30 segundos:

Option Explicit
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
Do
    WScript.Sleep 30000
    WshShell.AppActivate("Inbox - Microsoft Outlook")
    ' WshShell.SendKeys "% r"
    WScript.Sleep 30000
    WshShell.AppActivate("Firefox")
    ' WshShell.SendKeys "% r"
Loop

Vale a pena notar que, se os aplicativos no exemplo acima forem minimizados, eles permanecerão minimizados mesmo depois de serem ativados.

Para restaurar a janela também, remova o ' na frente do WshShell.SendKeys . Isso fará com que o script ative a janela e, em seguida, envie imediatamente a combinação de teclas de restauração Alt + Barra de Espaço , r . Se você estiver usando uma versão não inglesa do Windows, talvez seja necessário alterar esse atalho.

    
por 10.01.2014 / 16:55
0

O seguinte permite alternar entre 6 programas sem precisar nomeá-los. Basicamente, insira 1% a menos {TAB} do que o número de janelas que você deseja alternar, e não tenha nenhuma janela aberta estranha.

Funciona até 6 janelas, tanto quanto eu sei, provavelmente mais.

Option Explicit
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
Do
  WScript.Sleep 1000
  WshShell.SendKeys("%({TAB}{TAB}{TAB}{TAB}{TAB})")
Loop
    
por 06.10.2014 / 23:24