Wovan2
Пользователи-
Постов
45 -
Зарегистрирован
-
Посещение
Посетители профиля
Блок последних пользователей отключён и не показывается другим пользователям.
Достижения Wovan2
-
Разумеется и новый ответ. А первое соединение должно закрыться по ошибке. Видимо.
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
На сервере проблем в этом нет. Событие procedure IdTCPServerExecute(AContext: TIdContext) в параметре принимает контекст соединения. Там вся информация о соединении инициировавшем это событие.
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
To:Евгений Корепов Спасибо. Обязательно посмотрю.
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Ну это вопрос к Indy. Моего кода в приложении очень мало. Indy утверждает, что для каждого подключения создается отдельный поток, который обрабатывает это соединение, что впрочем, логично Знаете. Сейчас посмотрел. Сервер запущен на Win10. Без подключений 8.2 Мб. Один клиент 8.3 Мб. Два клиента - тоже 8.3 Мб.
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Для меня потоки не новость. Работать с ними приходилось. Но в данном случае это как-то усложняет все дело. Еще потерять кучу времени, чтобы понять как работают новые компоненты? На данный момент я убрал или сделал проверки на существование внутренних объектов IdTCPClient и IdTCPServer, где они проскакивали в коде - вываливания и на сервере и на клиенте прекратились. Подключение проверяю при каждом обращении к серверу, при отсутствии происходит переподключение.
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Да. Похоже на это. Ну нафиг эти красивости
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Перед долгим кодом делал r1.Visible:= true; //TRectangle r1.BringToFront; ai1.Enabled := true; В конце ai1.Enabled := false; r1.Visible:= false; В результате вообще ничего не видно. Ну почему все так не очевидно и не понятно. Неужели какой-нибудь стандартной анимашки нет??? Пробовал и через BitmapListAnimation1.Enabled := true; Результат примерно такой же отображается первый кадр и все. Может через поток надо как-то это делать??? Блин по полдня надо тратить на тривиальные вещи
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Не знаю глюк это или что, но в приложении я этот объект даже не могу в run-time увидеть Еще здесь на форуме упоминается какой-то ProgressDialog, но я у себя не могу его найти.
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
И еще подскажите, кто знает, аналог виндовских часиков ожидания на Androidе как реализовать. Видел какие-то вращающиеся кружки, или что-то подобное.
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Rusland отреагировал на ответ на вопрос: IdTCPClient-IdTCPServer управление соединением
-
To Rusland Тут, видимо, на месте уголков надо явно задать адрес сервера... Я, по крайней мере, так и сделал.
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Просветите, пожалуйста, насчет IOHandler. Я явно его не задаю, однако код IdTCPClient.IOHandler.Write(s, s.Size, True); отрабатывает без ошибок и корректно. Нужно его задавать явно? И еще на сервере ошибка происходит при закрытии формы на коде if Assigned(IdTCPServer) then IdTCPServer.Active := False; а именно на IdTCPServer.Active := False, поскольку сам объект существует. (ошибка обращения к памяти, посмотрел по отладчику пару раз проходит по exception и в конце концов AV). Если убрать вообще остановку сервера, то при закрытии ошибок нет. Интересно как в этом случае насчет утечки памяти?
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Не знаю как в D10 в D7 это просто вызов процедуры с пустым параметром. Формально туда можно было засунуть Sender от вызывающей процедуры, если бы этот параметр как-то обрабатывался в TimerTimer. А раз он никак не обрабатывается, то можно втиснуть пустышку.
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Вариант обхода с помощью стартового таймера, в общих чертах понял. Я, собственно, и читаю этот файл один раз. Второй раз, что встречается в коде, это изменение настроек в этом файле. Возможно используется 1 раз за все время жизни программы. И это есть в коде. Хотя и не совсем красиво. В Window я обычно так не делаю. Этот пункт самый непонятный. Не понимаю как получать ответ с сервера в асинхронном режиме. Ведь так или иначе запрос и ответ надо как-то синхронизировать? И не понятно причем здесь отказ от GetFromServer, это всего навсего процедура реализующая запрос - ответ в одном месте (асинхронность, наверное, можно организовать и в ее рамках?). В итоге, на мой взгляд, получилась ситуация как в Tethering, запрос в одной процедуре, ответ в другой, и не понятно какой ответ от какого запроса(если запросов было несколько). Как это можно соединить? На клиенте потоки используются исключительно для уменьшения подвисаний интерфейса программы? Ведь соединение с сервером принципиально одно. Спасибо за проявленную заинтересованность
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Согласен. Здесь поторопился. Если нет соединения, то и свойства все эти - швах. Надо просто свойства клиента Host и Port. Спасибо. Но основная проблема, я так подозреваю, не в этом.
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом:
-
Привычка, выработанная годами Маленький монитор как бы способствует В Delphi 10 плохо разбираюсь в файлах проекта. Запаковал всю папку проекта. Но кода, конечно, стало больше. Спасибо за проявленное внимание. Socket.7z
- 44 ответа
-
- connect
- idtcpserver
-
(и ещё 1 )
C тегом: