![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 05.04.2010
Сообщений: 273
|
![]()
Как я понимаю в TServerSocket есть массив всех соединений ServerSocket.Socket.Connections[ID], как мне получить этот самый ID во время подключения клиента(OnConnect) или(что более желательно) во время получения сообщения от клиента(OnRead)?
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
это не идентификатор, а просто номер в массиве.
он может изменяться. используйте св-во Data для хранения данных. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 05.04.2010
Сообщений: 273
|
![]()
Это Socket.data? Если можно поподробнее пожалуйста, яндекс ничего дельного про это свойство не сказал =\
Мне просто нужно как-то определить какой клиент отправил пакет и отправить его тому кому он предназначался. |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
это свойство имеет тип Pointer
в него вы можете записать указатель/объект на что угодно(но не забудьте освобождать память) Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 05.04.2010
Сообщений: 273
|
![]()
Я присваиваю св-ву data ссылку на string переменную которая будет содержать id сокета и некоторые данные о нем(данные о пользователе):
ss.Socket.data := Addr(user_id[500]); Вроде все нормально, но когда пытаюсь использовать переменную через эту ссылку: ShowMessage(ss.Socket.data); мне выдает: Incompatible types: 'String' and 'Pointer' Честно говоря я никогда не работал с типом Pointer и не знаю как правильно использовать переменную через ссылку Pointer'а, подскажите пожалуйста что я делаю не так =) |
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
используйте приведение типов
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 05.04.2010
Сообщений: 273
|
![]() |
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 05.04.2010
Сообщений: 273
|
![]()
Проблема актуальна, прошу помощи =(
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
TClientSocket и TServerSocket | _-Re@l-_ | Работа с сетью в Delphi | 2 | 29.11.2010 16:22 |
TServerSocket и TClientSocket | grafgrial | Общие вопросы Delphi | 3 | 25.08.2010 15:15 |
TServerSocket, TClientSocket | prod87 | Работа с сетью в Delphi | 7 | 26.10.2009 22:38 |
TServerSocket | goblinyara | Работа с сетью в Delphi | 4 | 24.01.2009 10:10 |