Hola estoy probando la funcion de Inactividad GetlastinputInfo, pero habia puesto cada 7200 segundos que cierre el programa (2 horas de inactividad), con un Timer 1000. pero no me hace caso lo probe con el caption (mas abajo el ejemplo) a los 300 segundos cierra todo sin ningun close cuando trabaja la funcion que va contando, llega ese contador a 300 y se cierra, que puede ser?.
Código Delphi
[-]
function SecondsIdle: DWord;
var
liInfo: TLastInputInfo;
begin
liInfo.cbSize := SizeOf(TLastInputInfo) ;
GetLastInputInfo(liInfo) ;
Result := (GetTickCount - liInfo.dwTime) DIV 1000;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Label1.Caption := Format('System IDLE last %d seconds', [SecondsIdle]) ;
end;