Forth http://www.fforum.winglion.ru/ |
|
ннКрон - Запись и воспроизведение действий пользователя http://www.fforum.winglion.ru/viewtopic.php?f=20&t=718 |
Страница 1 из 1 |
Автор: | VoidVolker [ Ср май 09, 2007 22:45 ] |
Заголовок сообщения: | ннКрон - Запись и воспроизведение действий пользователя |
По просьбе страждущих выкладываю простенький скрипт для крона - записывает в файл все нажатия кнопок и движения курсора, а потом может это все воспроизвести, по умолчанию точность 10 миллисекунд. Код: #( Запись!
WatchHotKey: "@r" NoLog SingleInstance : N>SBL N>S S" " S+ ; : N>SBL+ N>SBL S+ ; \ Кейлоггинг VARIABLE start-time CREATE LogKeyDN 255 ALLOT : LogKeyDN! LogKeyDN + C! ; ( x code -- ) : LogKeyDN@ LogKeyDN + C@ ; ( code -- ) : log-code >R GetTickCount start-time @ - N>SBL R> N>SBL+ crlf S+ S" script.log" FAPPEND ; : LOG-ANYKEY-PRESSED 255 1 DO I KEY-PRESSED? IF \ Лог нажатия кнопки I LogKeyDN@ 0= IF \ в прошлый проход эта кнопка была не нажата? I log-code -1 I LogKeyDN! THEN ELSE \ Лог отпускания I LogKeyDN@ IF \ нажималась ли эта кнопка? I NEGATE log-code 0 I LogKeyDN! THEN THEN LOOP ; \ ху-логгинг : log-moving >R >R GetTickCount start-time @ - N>SBL 0 N>SBL+ R> N>SBL+ R> N>SBL+ crlf S+ S" script.log" FAPPEND ; VARIABLE x-pos VARIABLE y-pos : LOG-MMoving MOUSE-POS x-pos @ y-pos @ D<> IF MOUSE-POS 2DUP log-moving y-pos ! x-pos ! THEN ; : Шпионить BEGIN 10 PAUSE LOG-ANYKEY-PRESSED LOG-MMoving VK_CONTROL KEY-PRESSED? UNTIL -17 log-code -162 log-code ; Action: 300 300 BEEP LogKeyDN 255 ERASE x-pos 0! y-pos 0! S" script.log" FDELETE GetTickCount start-time ! Шпионить 300 300 BEEP )# <% : FOR-FLINES { xt \ Lf Lc -- } ( a u xt -- ) R/O OPEN-FILE-SHARED THROW TO Lf 258 ALLOCATE THROW TO Lc BEGIN Lc 1+ 255 Lf READ-LINE THROW WHILE Lc C! Lc xt EXECUTE REPEAT DROP Lf CLOSE-FILE DROP ; : KeyDN CASE 1 OF MOUSE-LBDN ENDOF 2 OF MOUSE-RBDN ENDOF DUP DUP OF specKeyDN ENDOF ENDCASE ; : KeyUP CASE 1 OF MOUSE-LBUP ENDOF 2 OF MOUSE-RBUP ENDOF DUP DUP OF specKeyUP ENDOF ENDCASE ; : Диверсия { \ x -- } COUNT <TIB get-number GetTickCount start-time @ - - DUP 0< IF DROP 0 THEN PAUSE get-number TO x x IF x 0> IF x KeyDN THEN x 0< IF x NEGATE KeyUP THEN ELSE get-number get-number MOUSE-MOVE THEN TIB> ; %> #( Воспроизведение@ WatchHotKey: "@p" NoLog SingleInstance Action: 300 300 BEEP GetTickCount start-time ! S" script.log" ['] Диверсия FOR-FLINES 300 300 BEEP )# |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |