controlclick возвращает true, но фактического щелчка по окнам не происходит - AutoItX4Java

1

Я использую AutoItX4Java и пытаюсь нажать кнопку "Далее" в программе установки. Возврат метода "controlClick" равен True, но даже тогда я вижу, что щелчок не происходит в окне установщика. Ниже приведен код, используемый для установщика vlc [в качестве примера], где он запрашивает язык, по умолчанию - английский.

File file = new File("lib", "jacob-1.18-M2-x64.dll");
System.setProperty(LibraryLoader.JACOB_DLL_PATH, file.getAbsolutePath());
AutoItX x = new AutoItX();
x.run("vlc-2.1.3-win32.exe");
x.winActivate("[TITLE:Installer Language;]");
x.winWaitActive("[TITLE:Installer Language;]");
x.controlClick("[TITLE:Installer Language;]", "", "[CLASS:Button;INSTANCE:1;Text:OK;]")
Теги:
autoit

2 ответа

1
Лучший ответ

При манипулировании внешними окнами приложений всегда используйте #RequireAdmin для получения разрешения. Также используйте Opt ("WinSearchChildren", 1), чтобы также искать дочерние окна. Играйте с "WinTitleMatchMode".

#RequireAdmin ;Will give your script a permission elevation (sometimes its needed)
Opt("WinTitleMatchMode", 2) ;1=start, 2=subStr, 3=exact, 4=advanced, -1 to -4=Nocase
Opt("WinSearchChildren", 1) ;0=no, 1=search children also
  • 1
    Спасибо Милос работал нормально после добавления шага #RequireAdmin ..
1

В моем случае я только что закрыл сеанс eclipse и перезапустил его, сказав, что запустите его как администратора. Это повысит вашу сессию. Это сработало для меня.

Вы можете проверить, есть ли у вас права администратора для сеанса eclipse, используя команду isAdmin(); возвращает true, если у вас есть права.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню