Что нового

[Автоматизация] Не найдено активное окно при выходе или сворачивании удаленного рабочего стола

mif_ugra

адепт NWO
Сообщения
2
Репутация
0
Изначально нужно было автоматизировать работу по сливу некой инфы (бэкап нужной базы) с самопального сайта некой фирмы (там надо зайти, вбить выданный логин и пароль и прочую инфу, кликнуть по нужным кнопочкам зависящим от чисел в спец. файлике csv - дата, номер базы и т.д.).

Есть скрипт который должен открыть окно браузера (firefox) на удаленной машине в другом городе (без монитора стоит постоянно работающий от упса системник с Windows XP Professional) по расписанию в стандартном виндузявом планировщике заданий, затем работать с ним (перемещаться табами, кликать на разные координаты этого окна) и выполнив скрипт закрывать браузер до следующего запуска по расписанию.

При открытии любого удаленного доступа (удаленный рабочий стол, TeamViewer, AmmyAdmin) пока окна доступа открыто скрипт отрабатывается нормально и до конца. В нем все завязано на то что идет проверка и ожидание появления активного окна с нужным заголовком (инет медленный часто и окна прогружаются разное время и иногда до полминуты).. Затем идет работа с этим окном (перемещение между полями ввода инфы нажатием Tab) и клики на кнопки и области где Tab не помогает (флешевое меню тем выпадающее).

Печально то, что используя WinWaitActive при свернутом окне Удаленного рабочего стола, при закрытом окне удаленного доступа после запуска скрипта или при запуске по расписанию, скрипт окна не дожидается. Т.е. окно открывается, но неактивно и скрипт выдает ошибку.

Работать с полями неактивного окна (не табами и кликами, а получая их ID или другой опознаватель) видимо можно как то через библиотеку для firefox, но требует глобальной переписки скрипта и изучения всего этого. Опять же не решается вопрос с флешевым меню ибо нажатие и развертывание этого меню срабатывает только при активном окне).

В чем я не прав и можно ли как то тут исхитриться?
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
mif_ugra [?]
при свернутом окне Удаленного рабочего стола
Когда вы у себя сворачиваете клиент RDP, на удалённом компьютере окна не активируются. Проверено: http://autoit-script.ru/index.php/topic,12877

при закрытом окне удаленного доступа
Если закрыть клиент RDP, то на удалённом компьютере с WinXP Pro появится окно входа в систему. Поэтому окна приложений, запущенных из скрипта, создаются, но не отрисовываются. Работать с ними невозможно.

можно ли как то тут исхитриться?
Использовать TeamViewer, AmmyAdmin или другие альтернативы. С AmmyAdmin не работал - сказать ничего не могу. Сам работаю с TeamViewer версии 7 и проблем на удалённой машине после отключения сеанса не замечал. А в TeamViewer 8 добавили блокировку при отключении сеанса: "Lock the remote computer (e.g. server) automatically when closing the connection (optional and adjustable)". Сам я версию 8 ещё не пробовал, но возможно будут те же проблемы, что и с RDP, если эту опцию не отключить.
 
Автор
mif_ugra

mif_ugra

адепт NWO
Сообщения
2
Репутация
0
Использовать TeamViewer, AmmyAdmin или другие альтернативы. С AmmyAdmin не работал - сказать ничего не могу. Сам работаю с TeamViewer версии 7 и проблем на удалённой машине после отключения сеанса не замечал. А в TeamViewer 8 добавили блокировку при отключении сеанса: "Lock the remote computer (e.g. server) automatically when closing the connection (optional and adjustable)". Сам я версию 8 ещё не пробовал, но возможно будут те же проблемы, что и с RDP, если эту опцию не отключить.

да, убрал галку и запускается через TeamViewer после его закрытия.. осталось понаходить и повырубать все гибернации, сны и блокировку при простое.. буду ждать как сработает сегодня ночью.. результат отпишу..

спасибо..
 
Верх