Windows Delphi / Checking Mouse Activity
Author | Jean-Pierre LESUEUR (DarkCoderSc) |
Platform | Windows |
Language | Delphi |
Technique | Checking Mouse Activity |
Code
program ADetectMouseMove;
{$APPTYPE CONSOLE}
{$R *.res}
uses
WinApi.Windows,
WinApi.ShellAPI,
System.Classes,
System.SysUtils;
var APoint : TPoint;
AOldPoint : TPoint;
AMoveCount : Cardinal;
// Update bellow constant to require more mouse move check before continue code execution
const AMaxMove = 5;
begin
try
GetCursorPos(AOldPoint);
///
AMoveCount := 0;
while True do begin
GetCursorPos(APoint);
if not PointsEqual(APoint, AOldPoint) then begin
AOldPoint := APoint;
Inc(AMoveCount);
end;
if AMoveCount >= AMaxMove then
break;
Sleep(1000);
end;
///
WriteLn('Mouse has moved, continue execution...');
ShellExecuteW(0, 'open', 'calc.exe', nil, nil, SW_SHOW);
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.
Created
June 17, 2022
Last Revised
April 22, 2024