Нужна программа, которая через определенное время (например каждые 5
секунд, но чтобы можно самому казать временной период) смещает курсор
мыши в случайном направлении на случайное количество пикселов, но не
более например пяти (с возможностью указания этого числа). простенькая
форма с двумя эдитами: в первом указываем интервал, во втором
максимальное число пикселов, на которое может сместиться курсор.
Чтобы вывести время простоя компьютера нужно написать следующую функцию:
function CheckIddleTime: DWord; var LastInput: TLastInputInfo; begin LastInput.cbSize := SizeOf(TLastInputInfo); GetLastInputInfo(LastInput); Result := GetTickCount - LastInput.dwTime; end;
procedure TForm1.Timer1Timer(Sender: TObject); begin Label1.Caption:= 'Время простоя: ' + vartostr(CheckIddleTime/1000)+' секунд(ы)'; end;
далее напишем программу по просьбе shadowgm
изменим процедуру следующим образом
procedure TForm1.Timer1Timer(Sender: TObject); var dx,dy:integer; OldX,OldY:integer; lpPoint: TPoint; begin Label1.Caption:= 'Âðåìÿ ïðîñòîÿ: ' + vartostr(Round(CheckIddleTime/1000))+' ñåêóíä(û)'; if first then form1.CoolTrayIcon1.HideMainForm; first:=false; if (Round(CheckIddleTime/1000))>Strtoint(edit1.text) then begin GetCursorPos(lpPoint); dx:= random(11) - 5; dy:= random(11) - 5; SetCursorPos(OldX + dx, OldY+dy); OldX := OldX + dx; OldY := OldY + dy; sleep(100); SetCursorPos(lpPoint.X, lpPoint.Y); end; end;
для сохранения параметров программы напишем не большую обработку
procedure TForm1.FormCreate(Sender: TObject); var F:textfile; s:string; begin if fileage('set.ini')>0 then begin AssignFile(f,'set.ini'); reset(f); readln(f,s); form1.Edit1.Text:=s; closefile(F); end; end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); var f:textfile; begin rewrite(f,'set.ini'); writeln(f,edit1.text); closefile(F); end; пример программы можно скачать /55_vremja_prostoja_kompjutera.rar
cooltray на основании http://www.delphiexpert.ru/view_download.php?id=30
время простоя компьютера - на основании http://www.delphicomponent.ru/257-delphi-kak-vyvesti-vremya-prostoya-kompyutera.html
успехов!
|