У меня есть программное обеспечение для мобильной связи, которое всегда запрашивает подтверждение при переходе в состояние роуминга. Каждый день требуется нажать "ОК", прежде чем он сможет подключиться.
Я нашел следующий скрипт, который я попытался использовать, чтобы автоматически принять это всплывающее окно:
Set WshShell = WScript.CreateObject("WScript.Shell")
'Check if the Hardware installation window is present, else sleep 1 second and try again.
present = 0
Do Until present = 1
If WshShell.AppActivate("Hardware Installation") Then
present = 1
Else
WScript.Sleep 1000
End If
Loop
'Make the Hardware Installation window active
WshShell.AppActivate "Hardware Installation"
'Send Alt+C
WshShell.SendKeys "%C"
Источник: автоматически принимать тестирование Windows Logo?
Сценарий выше не работает напрямую в моей ситуации:
Всплывающее окно и само программное обеспечение имеют одинаковое имя в окне (т. Е. «ABC Software»). Так что я не могу определить всплывающее окно с WshShell.AppActivate
В всплывающем окне с вопросом о роуминге есть только кнопки ОК и ОТМЕНА. Я не могу использовать ALT+C
Могу ли я сделать так, чтобы скрипт читал сообщение во всплывающем окне и идентифицировал окно с этим?
Любые идеи, как я мог бы продолжить?
Я могу автоматически принять всплывающее окно, просто используя пробел Sendkeys?