Muitas das vezes estamos trabalhando com automação de testes e precisamos enviar um determinado comando para um aplicativo e não funciona corretamente, temos uma segunda opção pelo Wscript.Shell que é um objeto que permite acesso direto ao shell do Windows, através do método SendKeys podemos enviar comandos do Windows.
# Require the win32ole library:
require 'win32ole'
'
To maximixe the active window "% x" (Alt+SpaceBar, x)
To minimize the active window "% n" (Alt+SpaceBar, n)
To restore the active window "% r" (Alt+SpaceBar, r)
To close window "%{F4}"
# ALT+A --> wsh.SendKeys("%a")
# ENTER
--> wsh.SendKeys("{ENTER}")
Temos uma lista de comandos no site da microsoft abaixo:
https://msdn.microsoft.com/en-us/library/8c6yea83.aspx
'
# Cria a instancia do Wscript Shell, para poder usar os metodos.
wsh = WIN32OLE.new('Wscript.Shell')
# Passar o Nome da Janela atual
if wsh.AppActivate('*new 3 - Notepad++')
# Tempo de espera em segundos
sleep(1)
# comando SendKeys para enviar o comando
wsh.SendKeys("% x")
end
----------------------------------------------------------
Key Special Character
SHIFT +
CTRL ^
ALT %
----------------------------------------------------------