-
Постов
208 -
Зарегистрирован
-
Посещение
-
Победитель дней
12
Сообщения, опубликованные GASCHE
-
-
8 часов назад, rareMax сказал:
ууу кипишь.
Да нет, просто не представляю того, кто рискнет писать серьезные приложения на FMX, а не серьезные так их и ломать будут не по серьезному.
-
Нет, но думаю что если FMX настолько устойчива к взлому и примерно представляя как пытаются защитить свой софт некоторые компании, то Kitty не поднимала бы вопрос о дальнейшей судьбе FMX.
-
3 часа назад, rakhmet сказал:
Да, придётся мне повременить с публикацией - архитектура в том виде, в каком она сейчас есть, вообще не годится.
Сколько не видел хороших приложений, почти всегда есть взломанные.
-
54 минуты назад, Равиль Зарипов (ZuBy) сказал:
Что значит в зависимости от типа c?
c[r] := nil; // Или FreeAndNil(c[r]), в зависимости от типа c.
-
7 часов назад, AlexG сказал:
Во-первых TTask.Run запустит ваш обработчик нажатия на выделенный элемент в отдельном потоке
А переменная Button будет видна в этом отдельном потоке в случае завершения процедуры lbxMouseUp?
-
Ну почему, с сервером какого клиента соединитесь данные того клиента и получите, результат отправите на общий сервер.
-
21 час назад, Zawuza сказал:
К сожалению, два клиента не могут соединиться друг с другом...
Думаю вы не поняли, попробую по-другому. На каждом компе установите программы клиента и сервера. Каждый сервер будет слушать запросы других клиентов и скидывать им данные клиента, установленного на этом же компе.
-
Перефразирую, читать данные других клиентов с сервера, проводить вычисления, итоги и свои данные скидывать на сервер.
12 часов назад, Akromd сказал:они имели возможность соединятся без стационарного сервера
Это возможно, на каждом клиенте поднимаете свой сервер, который будет слушать запросы других клиентов и скидывать им требуемые данные. Но не думаю, что это будет проще чем работа с одним сервером.
-
31 минуту назад, Akromd сказал:
Соответственно и хотелось бы скинуть вычисления на клиентов
Как-то не понятно, что мешает каждому клиенту читать данные с сервера, проводить вычисления, итоги скидывать на сервер?
-
Да, в режиме планшета всплывает.
-
На 10 у меня не всплывает, уточните
10 часов назад, Lem0nti сказал:автовсплывание клавиатуры включено в настройках
это где? Клаву отключил.
-
В 12.12.2016 в 16:08, Lem0nti сказал:
Предлагаю такой эксперимент
Проще выложить исходники и *.exe файлы. Тогда сравнение
1 час назад, d7d1cd сказал:Решил повторить Ваш эксперимент
будет более объективным.
-
13 часов назад, giveaway сказал:
Как принудительно завершить поток
Если можно принимать данные блоками, то можно так
WHILE NOT ThreadData.Terminated DO BEGIN END;
Сейчас уже не помню почему но перешёл на BeginThread. -
Да столько объясняли и напрасно, видно плохие из нас советчики.
-
Выложите, посмотрим.
-
Нет, Synchronize очень затратная операция, Sleep это даже понять не могу зачем, какой тут выигрыш в скорости?
-
15 минут назад, Akromd сказал:
дело не в потоках
А зачем поток, если в нем только четыре Synchronize не считая Sleep
-
9 часов назад, Steepe_Hare сказал:
который бы работал, как задумывается!
Да чтоб понять как вы задумали надо обращаться к Кашпировскому. Запускайте цикл
while not Cancelled do begin Inc(I); end;
в потоке думаю это решит вашу проблему.
-
1 час назад, Steepe_Hare сказал:
под работает я понимаю, что программа дожидается пяти нажатий кнопки
Если в 5 кучках по два яблока, то узнать общее количество можно сложением, а можно умножением ответ в том и в другом случае будет правильным. Вы запустите свой пример в Windows и посмотрите в диспетчере задач загрузку процессора сразу все станет ясно.
-
Все зависит от того что вы понимаете под словом работает, а так да работает никто и не спорит.
-
14 минут назад, Steepe_Hare сказал:
Если это так плохо и неверно, то зачем оно в FMX?
Так использовать такую конструкцию
while not Finish do Application.ProcessMessages;
и для Windows плохо
-
8 минут назад, Steepe_Hare сказал:
нужно отработать код, а затем вернуться в начало цикла
Так где это в вашем примере?
-
1 час назад, Steepe_Hare сказал:
Задача: дождаться действий пользователя (допустим, 5 раз нажать на Button2) и только потом выполнять следующий после этого код
А что мешает так изменить ваш пример
procedure TForm1.Button1Click(Sender: TObject); begin i := 0; Finish := False; Memo1.Lines.Add('Start'); Button2.Enabled := True; Button1.Enabled := False; end; procedure TForm1.Button2Click(Sender: TObject); begin Inc(i); Memo1.Lines.Add(IntToStr(i)); if (i = 5) then begin Finish := True; Button2.Enabled := False; Ogogo(); end; end; procedure TForm1.Ogogo(); BEGIN //while not Finish do //Application.ProcessMessages; Memo1.Lines.Add('Finish'); Button1.Enabled := True; END;
-
Зайдите в "Потоки и распределенные вычисления" там есть аналогичные темы.
Защита FMX
в Прочие вопросы
Опубликовано
Это не ко мне, а к тем, кто думает, что FMX устойчива к взлому.