Автоматизация работы компьютера

Статья о программной автоматизации некоторых действий на компьютерах под управлением операционных систем Windows, от "восьмерки" до XP.

12.12.2013 00:19,
Автоматизация работы компьютера
Страницы: Пред. 1 2 3

Автоматический вход в приложение (клиент), требующее авторизации

Для подобного действия требуется уже использование скриптовых языков программирования или же готовых программных продуктов. Сложность реализации тут прямо зависит от функционала клиентской программы, требующей авторизации. Из скриптовых ЯП (языков программирования) можно выделить AutoIT и AutoHotkey, наиболее удобные для автоматизации использования приложений. 

Реализация автоматического входа в онлайн игру (на примере клиента игры Jade Dynasty) с использованием AutoHotkey:

Для начала следует скачать сам AutoHotkey c autohotkey.com. После установки скачанной программы попросту кликните правой кнопкой мыши по любому свободному пространству на рабочем столе или в определённом каталоге (папке) и выберите пункт «Создать» «AutoHotkey Script». После создания файла, откройте его для редактирования, т.е. один раз кликните по нему ПКМ (правой кнопкой мыши) и выберите пункт «Edit Script». Если такого пункта у вас нет, то откройте файл программой «Notepad» («Блокнот»), кликнув ПКМ по файлу и выбрав пункт «Открыть с помощью».

  1. IfWinExist, ahk_class ZElementClient Window ; проверяем запущен ли игровой клиент, т.е. процесс ZElementClient
  2. ControlClick, x478 y297, ahk_class ZElementClient Window ; кликаем ЛКМ по определённой области уже развернутого клиента
  3. WinActivate, ahk_class ZElementClient Window ; активируем окно игры ;ZElementClient, т.е. окно разворачивается (если было свернуто) и в дальнейшем все нажатия клавиш эмулируются в нём
  4. SendInput log+in ; набираем логин командой SendInput, символ + нужен для заглавных букв
  5. Sleep, 500 ; ожидаем 500 миллисекунд (т.е. полсекунды). Если компьютер тормозит, то рекомендую увеличить время ожидания
  6. SendInput ; эмулируем нажатие клавиши Tab
  7. Sleep, 500 ; снова ожидаем
  8. SendInput pass+word ; набираем пароль

Примечание к коду выше: 

  • комментарии к коду идут после символа ;
  • крайние цифры слева нумеруют строки для вашего удобства, т.е. их не следует добавлять в код.

Два первых пункта в коде (1 и 2) можно пропустить, т.к. в данном случае они не играют особой роли. ControlClick может понадобиться только если клиентом не поддерживается Tab. IfWinExist – проверка на наличие окна/процесса понадобится, если надо осуществлять какие-либо действия после определения его наличия, либо отсутствия.

Разумеется, данный код можно переделать для автологина в любом другом приложении. Прежде всего, для этого необходимо узнать ahk_class окна. На скрине отображен ahk_class проводника Windows. Как видите – это «CabinetWClass».

CabinetWClass

Осуществляется процедура определения данного параметра очень просто. Запустите программу «Window Spy» (она поставляется вместе с AutoHotkey). После этого просто разверните нужное, для определения ahk_class, окно и кликните по нему (развернутому окну). 

Затем нажмите комбинацию клавиш Alt + Shift + Tab, чтобы «заморозить» найденные значения (иначе они будут постоянно меняться при перемещении курсора, что очень неудобно при поиске по координатам и пикселям) и скопировать их из окна программы «Window Spy».

Параметры On Screen и In Active Window определяют координаты положения курсора мыши на экране и в активном окне соответственно.

Параметр Color – цвет пикселя под курсором мыши.

Автоматическое выключение компьютера по расписанию

Здесь можно использовать программные средства, встроенный в систему планировщик или вышеперечисленные скриптовые языки программирования. Если вы не желаете полагаться на сторонние программы, то можно реализовать отключение компьютера через планировщик. Создайте файл с расширением .bat и впишите туда следующее (для этого откройте файл, кликнув на него ПКМ и выбрав пункт «Изменить» или же «Открыть с помощью» «Блокнот»):

shutdown /s

Автоматическое выключение компьютера по расписанию

shutdown с параметром –s (можно писать как с дефисом (-s), так и со слешем (/s)) выключает компьютер. Если вместо /s добавить параметр /r, то компьютер перезагрузится.

Дальше уже следует добавить файл батника (файл с расширением .bat) в планировщик, как уже описывалось выше, и указать время его запуска.

Автоматическое выключение компьютера по расписанию

Если хотите узнать о параметрах команды shutdown подробнее, то впишите в командную консоль (интерфейс командной строки) следующее:

shutdown /?

Система тут же выдаст вам возможные параметры для этой команды.

В AutoHotkey реализация выключения не сложнее. Для этого там используется команда Shutdown. Например:

Shutdown, 8

Shutdown с параметром 8 выключает компьютер.

Список всех параметров Shutdown:

  • 0 – выход из учетной записи (завершение сеанса пользователя)
  • 1 – завершение работы системы
  • 2 – перезагрузка компьютера
  • 4 – закрытие всех программ
  • 8 – завершение работы системы и отключение питания компьютера

Реализация сразу нескольких действий осуществляется складыванием параметров. Например:

Shutdown, 12

Т.е. 4 (закрытие приложений) + 8 (выключение) = 12 (закрытие всех программ и выключение питания).

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

Для использования полученного файла в формате .ahk на других компьютерах (где не установлен AutoHotkey), требуется его компилирование (преобразование) в исполняемый файл (т.е. в файл с расширением .exe). Просто кликните ПКМ (правой кнопкой мыши) по файлу с расширением (форматом) .ahk и выберите в появившемся меню пункт «Compile Script».

Автоматическое выключение компьютера по расписанию

Для указания дополнительных параметров и выбора картинки для иконки файла, выберите пункт «Compile with Options» (англ. «Компиляция с опциями»).

На этом всё. Комфортной вам автоматизации работы.

Страницы: Пред. 1 2 3
Оцените материал:  
(Голосов: 13, Рейтинг: 3.18)

Каждый вечер мы будем присылать вам одно письмо со всеми опубликованными за день материалами. Нет материалов - нет писем, просто и удобно (другие варианты).

Материалы по теме


Комментарии (0)