Precisa enviar pressionamentos de tecla para o aplicativo DOS do Windows no logoff inativo

1

Eu estou apoiando um legado Paradox 4.5 para o sistema DOS. Nossos usuários se conectam a um único servidor de terminal (Windows Server 2003) para executar o Paradox. Frequentemente precisamos inicializar todos do sistema. Nosso Administrador do Paradox se conectará a cada sessão de área de trabalho remota, desconectará o usuário do Paradox e o logout do Windows.

Eu gostaria de automatizar esse processo.

Fechar a janela do DOS sem desligar o paradoxo pode levar à corrupção de dados. Se eu puder enviar pressionamentos de tecla ao aplicativo, posso desligá-lo com elegância.

1) Como posso enviar pressionamentos de teclas para uma janela existente do DOS do Windows? Eu vi exemplos de vbscript e sendkeys, mas estes parecem ser usados para controlar janelas quando o identificador da janela está disponível. Eu preciso controlar uma janela que já está aberta.

2) É possível executar automaticamente o envio de pressionamento de tecla quando o logoff ocioso da área de trabalho remota é executado?

    
por Brien Malone 15.01.2014 / 20:37

1 resposta

0

Ainda não testei isso (ainda), mas aqui está uma ideia.

1) Parece ser possível use uma das funções SendKeys para passar as teclas pressionadas para a janela atualmente em foco através do Powershell.

Para colocar uma janela escolhida em destaque post parece fornecer o snippet Powershell, contanto que você de alguma forma possa identificar o processo da janela do Paradox. Se você não puder fazer isso, não consigo imaginar como isso seria automatizável, a menos que você possa encontrar alguma solução específica para o funcionamento do Paradox.

2) Deve ser possível anexa uma tarefa ao id de evento relevante que aciona seu script. Contanto que o script processe antes que o explorer e todas as suas janelas filhas saiam (você teria que testar isso), acho que poderia funcionar.

    
por 15.01.2014 / 21:55