Что нового

Перестает работать код после компиляции

mfcs

Новичок
Сообщения
13
Репутация
0
Странная ситуация.. Писал код для автоматизации действий, где проскакивают команды взаимодействия с окнами. Проблема в том, что после компиляции, некоторые команды перестают работать. Например в данный момент, проблема с WinActivate. Будучи скриптом, код работает, но, после компиляции, отказывается давать фокус окну. Можно списать на то, что система не дает манипулировать окнами из-за недостаточных прав, но, я запускал exe файл от имени администратотра, добавил #RequireAdmin, а программа, с которой он должен взаимодействовать, запущена обычно, но ничего из этого не помогло. При этом всем, я проверял скрипт на другом пк, где скрипт и exe файл, оба работали. Система, версия autoit, настройки, все одинаковое. Скорее даже, после моих последних действий, у autoit и exe файла, есть все возможные права... Буду признателен за помощь.

Код:
WinActivate("Win Program")
 

All2khoff

Продвинутый
Сообщения
351
Репутация
65
К сожалению сложно судить по одной строке, но как вариант предложу использовать проверки выполнения предыдущей команды.
так же так как операционной системе требуется некоторое время на выполнение команды с окном, рекомендую ставить небольшие задержки между командами и другими действиями.
Код:
$hWnd = WinActivate("Win Program")
sleep(200)
If WinActive($hWnd) Then
    MsgBox(4096, "", "Окно Win Program сейчас активно")
Else
    MsgBox(4096, "", "Окно Win Program не активно")
EndIf
 
Верх