|
#1
|
||||
|
||||
проверка на время
Код:
if LClients.Count>0 then for i:=LClients.Count-1 Downto 0 do if CompareDateTime(IncMinute(PClientInfo(LClients.Items[i])^.time, 2),now) = -1 then при подключении вот что делается Код:
var p: PClientInfo; begin New(p); p.adress:=Socket.RemoteAddress; p.time:=now; p.Client:=Socket; LClients.Add(p); и ежеминутно клиент присылает пакет сообщая что он жив, в LClients у этого пользователя обновляется время на текущее Код:
if pacet.ID = 0 then begin for i:=0 to LClients.Count-1 do if Socket = PClientInfo(LClients.Items[i])^.Client then begin new(p); p.adress:=Socket.RemoteAddress; p.time:=now; p.Client:=Socket; LClients.Items[i]:=p; end; exit; end; проверял время своевременно обновляется никак не врубаюсь из за чего проверка то срабатывает, там прибавляется 2 минуты и первая переменная никак не может быть меньше текущего времени Последний раз редактировалось Admin, 12.07.2011 в 16:33. |
#2
|
||||
|
||||
вроде уже работает, так и не понял в чем проблема была
Последний раз редактировалось ALexandr555, 13.07.2011 в 06:32. |