Рубрики
cmd \ vbs \ scripts

autoit / автоскрипты / clicker /

Источник:

http://www.autohotkey.com/
http://forum.script-coding.com/ - подборка скриптов
http://autoit-script.ru/
http://forum.script-coding.com/viewtopic.php?id=1615
https://www.autoitscript.com/autoit3/docs/functions/Send.htm - клавиши 
http://autoit-script.ru/docs/tutorials/ - примеры на русском языке

Пример скрипта:

При нажатии клавиши "1" начинает печатать в активное окно "222" с интервалом в секунду. 
Приостановка по F11, возобновление - по F12.
_________________________________________
1::
Loop
{
  Send 222
  Sleep 1000
}
Return

F11::                 ; Приостановка по F11.
  If not Stop
  {
    Stop := True
    Pause
  }
Return

F12::                 ; Возобновление по F12.
  If Stop
  {
    Stop := False
    Pause
  }
Return
________________________________________

Пример скрипта с «зацикливанием».

При нажатии клавиши "1" начинает печатать в активное окно "222" с интервалом в секунду. 
После 10 таких действий печатает в активное окно один раз "333", а затем начинает всё заново.
________________________________________
1::
  Loop, 10
  {
    Send 222
    Sleep 1000
  }
  Send 333
GoTo, 1
_______________________________________

Примеры команд которые могут пригодится:

; - комментарий
; Autoit Editor. Для запуска скрипта, компиляции и проверки идем в меню Tools.
; Go запустит и выполнит текущий скрипт

#RequireAdmin - попросить дать права админа
WinWaitActive("Сапёр") - ожидать появление программы с именем окна Сапер
Run("notepad.exe") - запуск блокнота
Run("C:\1\Autoruns64.exe") - запуск программы Autoruns64.exe
sleep(1000) - подождать 1000мс = 1сек
send("123{ENTER}ABVG") - нажать цифры 1,2,3, клавишу ENTER, и клавиши A,B,V,G
MsgBox(0, "Обучение", "Привет Мир!") - Выведет на экран "Привет мир Мир!"
MsgBox(64, "Обучение", "Привет Мир!")  - Выведет на экран "Привет мир Мир!" - будет друга иконка из за флага 64

Windows 10 запуск ножниц….

;#!!!! На windows 10 есть проблема с запуском встроенных программ.... из autoit

$tValue = DllStructCreate("dword")

If @OSArch = "X64" And @AutoItX64 = 1 Then
    Run(@WindowsDir & "\System32\SnippingTool.exe")
ElseIf @OSArch = "X64" And @AutoItX64 = 0 Then
    ;отключаем и после запуска включаем обратно редирект System32->SysWOW64
    DllCall("kernel32.dll", "int", "Wow64DisableWow64FsRedirection", "ptr", DllStructGetPtr($tValue))
    Run(@WindowsDir & "\System32\SnippingTool.exe")
    DllCall("kernel32.dll", "int", "Wow64RevertWow64FsRedirection", "ptr", DllStructGetPtr($tValue))
Else
    Run(@WindowsDir & "\System32\SnippingTool.exe")
EndIf


Пример скрипта печатаем в блокнот:

Run("notepad")
sleep(1000)
Send("«Война́ и мир» — роман-эпопея Льва Николаевича Толстого, {ENTER}описывающий русское общество в эпоху войн против Наполеона в 1805—1812 годах. {ENTER}Эпилог романа доводит повествование до 1820 года. ")

Пример функции клавиш для сапера(XP) (ms virtual code key)

; В сапере на windows XP был чит. при вводе пароля появляется пиксель. и черный цвет есть бомба. белый цвет есть нет бомбы
Func SendVkey($iCode)
    DllCall('user32.dll', 'int', 'keybrd_event', 'int', $iCode, 'int', 0, 'int', 0, 'ptr', 0)
    DllCall('user32.dll', 'int', 'keybrd_event', 'int', $iCode, 'int', 0, 'int', 2, 'ptr', 0)
 EndFunc

Run("c:\1\winmine.exe")
WinActive("Сапер")

Send("{ALT}{DOWN 4}{ENTER}")
Sleep(500)

SendVKey(0x58)
SendVKey(0x59)
SendVKey(0x5A)
SendVKey(0x5A)
SendVKey(0x59)
SendVKey(0xA0)

;Send("XYZZY") тот самы чит
;Sleep(500)

Local $SaperXY = WinGetPos("Сапер")
Local $CurrentX = $SaperXY[0] + 22
Local $CurrentY = $SaperXY[1] + 103
Local $TotalMines = 99

for $i=1 to 16
   for $j=1 to 30
	  MouseMove($CurrentX+ ($j-1)*16, $CurrentY + ($i-1)*16, 0)
	  Sleep(5)
	  if pixelGetColor(0,0) > 0 Or $TotalMines = 0 Then
		 MouseClick("left")
	  Else
		 MouseClick("right")
		 $TotalMines = $TotalMines - 1
	  EndIf
   Next
Next

; вводим в форму победителя свое чудесное имя Я
Send("Я")
Sleep(3000)
Send("{Enter}")
Sleep(3000)
Send("{Enter}")

#include 
MsgBox($MB_SYSTEMMODAL, "Auttoit", "Yo, Моя закончила!", 10)

Еще один пример с банкнотом win_xp:

; Запускается блокнот. Печатаем. и Выходим без сохранения.
; AutoIt v3 Window Info  -  всегда поможет определится с окнами (имя документа, что нажать..... и т.д.)

Run("notepad.exe")
WinWaitActive("Безымянный - Блокнот") ; Win_XP
Send("Это некоторый текст.")
WinClose("Безымянный - Блокнот") ; Win_XP
WinWaitActive("Блокнот", "Сох&ранить")
Send("!n")

Еще один пример с банкнотом win_10_rus:

Run("notepad.exe")
WinWaitActive("Безымянный – Блокнот")
Send("Это некоторый текст.")
WinClose("*Безымянный – Блокнот")
WinWaitActive("Блокнот")
Sleep(200)
Send("!н") ; ! - это клавиша ALT и да тут русская буква н. ALT+н