Wpis z mikrobloga

#praca #pracbaza #programowanie #it

Hej,

Dzielę się dwoma prostymi skryptami do poruszania myszką.

Pierwszy jest w AutoIT i ten rekomenduję. Skrypt sprawdza co 20 sekund czy użytkownik użył myszki bądź klawiatury w tym czasie, jeżeli nie to robi mikro trójkąt (dla osoby postronnej przypomina to przypadkowe dgnięcie kursora myszki).

Skrypt w pamięci zajmuje jakieś 2-3 MB, więc praktycznie nie zapycha pamięci.

Do uruchomienia skryptu potrzebujesz zainstalowanego AutoIT, więc musisz mieć też prawa admina, by go zainstalować. Skrypt skopiuj do notatnika i zapisz go w formacie .au3. Potem po prostu go uruchom poprzez nowo stworzony plik.

Druga uwaga - skrypty w AutoIT są dosyć często wykrywane w AV jako potencjalne zagrożenie (w AutoIT możesz napisać malware). Miej to na uwadze instalując oprogramowanie i uruchamiając skrypt.

Jest on całkowicie bezpieczny, ale może zostać wykryty przez oprogramowanie antywirusowe.

Oto skrypt:

#include <Misc.au3>
#include <MsgBoxConstants.au3>
#include <Timers.au3>

; Change the following variables as needed
$sleepTime = Int(1000 * 20) ; sleep for 20 sec
$scriptDurationInHours = 8 ; script will run for 8 hours

$scriptDurationInHoursInMs = Int(1000 * $scriptDurationInHours * 60 * 60)

$i=0
$j= Int($scriptDurationInHoursInMs / $sleepTime)

Func Main()
HotKeySet("{DEL}", "Quit") ; HotKey set to DEL. DEL will kill the script. You can stop it from Windows tray as well

While $i<$j
$idleTime = Int(_Timer_GetIdleTime()) ; how long the keyboard or mouse has not been used

If $sleepTime <= $idleTime Then
MoveCursor()
EndIf
Sleep($sleepTime)
$i+=1
Wend

EndFunc

Func MoveCursor()
HotKeySet("{DEL}", "Quit") ; HotKey set to DEL

GetCursorPosition()

MouseMove ( $mousePosX1, $mousePosY1, 18 )
MouseMove ( $mousePosX2, $mousePosY2, 18 )
MouseMove ( $mousePosX2, $mousePosY1, 18 )
Endfunc

Func GetCursorPosition()
$mousePos = MouseGetPos()
$mousePos[0] ; Mouse X position
$mousePos[1] ; Mouse Y position

Global $mousePosX1 = Int($mousePos[0] + 5)
Global $mousePosX2 = Int($mousePos[0])
Global $mousePosY1 = Int($mousePos[1])
Global $mousePosY2 = Int($mousePos[1] + 5)
Endfunc

Func Quit()
Exit ; exit the script
Endfunc

Main()
  • 4
  • Odpowiedz
  • 4
@brck89: do drugiego skryptu prawdopodobnie nie potrzebujesz żadnych uprawnień i żaden antywirus go nie wykryje.

Jest on napisany w PowerShell, który jest dostępny standardowo w Windows. Minus jest taki, że zapycha pamięć (od 100 do 200 MB). Poza tym jedyne co wykrywa to ruchy myszką (pomija pisanie na klawiaturze).

Skrypt skopiuj do notatnika i zapisz w formacie .ps1. Możesz też po prostu użyć PowerShell ISE.

Aby zastopować skrypt, użyj Task Managera
  • Odpowiedz
Dzięki wielkie, z pomocą chat gpt dodałem feature klikania myszką wraz z ruszeniem się i działa idealnie dla moich potrzeb ( ͡° ͜ʖ ͡°)
  • Odpowiedz