|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.05.2011, 12:28 | #1 |
Форумчанин
Регистрация: 05.04.2010
Сообщений: 273
|
ID соединения в TServerSocket
Как я понимаю в TServerSocket есть массив всех соединений ServerSocket.Socket.Connections[ID], как мне получить этот самый ID во время подключения клиента(OnConnect) или(что более желательно) во время получения сообщения от клиента(OnRead)?
|
28.05.2011, 12:38 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
это не идентификатор, а просто номер в массиве.
он может изменяться. используйте св-во Data для хранения данных. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
28.05.2011, 13:03 | #3 |
Форумчанин
Регистрация: 05.04.2010
Сообщений: 273
|
Это Socket.data? Если можно поподробнее пожалуйста, яндекс ничего дельного про это свойство не сказал =\
Мне просто нужно как-то определить какой клиент отправил пакет и отправить его тому кому он предназначался. |
28.05.2011, 13:09 | #4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
это свойство имеет тип Pointer
в него вы можете записать указатель/объект на что угодно(но не забудьте освобождать память) Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
28.05.2011, 13:53 | #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'а, подскажите пожалуйста что я делаю не так =) |
28.05.2011, 14:21 | #6 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
используйте приведение типов
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
29.05.2011, 13:10 | #7 |
Форумчанин
Регистрация: 05.04.2010
Сообщений: 273
|
|
02.06.2011, 13:02 | #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 |