Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.01.2013, 22:10   #1
stalker1995s
Gamedeveloper
Форумчанин
 
Аватар для stalker1995s
 
Регистрация: 11.07.2012
Сообщений: 149
Лампочка ServerSocket - администрирование

ServerSocket - администрирование

С новым годом Коллеги! Под новый год, столкнулся с проблемой. Думаю что она не так сложна, задача в следующем:
Для ясности сразу скажу, делаю многопользовательский чат, и для того чтобы отправить ЛС, нужно знать ID пользователя, так же для того, чтобы кикнуть нарушителя. Как кикнуть, или отправить ЛС знаю. Но вот как сделать так, чтобы при подключении клиента. ему выдавался ID какой он по очереди, а так же чтобы при отключении, все сдвигались в очереди.
P.S. Делать пытался, порой даже очень удачно, но в конце, вышло так:
stalker1995s вне форума Ответить с цитированием
Старый 01.01.2013, 22:45   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
а так же чтобы при отключении, все сдвигались в очереди.
А зачем сдвигать?
Я бы вообще ID присваивал на основе времени или GUID. ТОгда и сдвигать не нужно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.01.2013, 09:57   #3
stalker1995s
Gamedeveloper
Форумчанин
 
Аватар для stalker1995s
 
Регистрация: 11.07.2012
Сообщений: 149
По умолчанию

А по подробней ?
stalker1995s вне форума Ответить с цитированием
Старый 03.01.2013, 10:03   #4
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

Уважаемый коллега про вот это.
тоже его использую в своих системах.
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 03.01.2013, 14:02   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Код:
Уважаемый коллега про вот это.
тоже его использую в своих системах.
Вам GUID мало?

В случае с GUID клиент при подключении сам должен прислать его.
Человек_Борща вне форума Ответить с цитированием
Старый 03.01.2013, 22:15   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
А по подробней ?
Функции на основе времени дают уникальные идентификаторы, которые можно использовать как ключ. Я например предпочитаю formatDateTime('yyyymmddhhsszz')
А кто-то GUID красивый.

Как только подключается юзер ты с его подключением связываешь этот GUID (любым способом, например в ассоциативном массиве), и далее уже работаешь по нему.

Допустим у меня юзера хранились в TStringList
При подключении я запоминал Список.Value[formatDateTime('yyyymmddhhsszz')]:=IP
И передавал это номер юзеру, дабы при любом посте можно было бы найти его в списке
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.01.2013, 20:46   #7
Slym
Участник клуба
 
Регистрация: 07.12.2011
Сообщений: 1,025
По умолчанию

все соединения четко определяются по IP и порту
соединить 4 байта ip и 2 байта порта получим 6 уникальных байт. их можно заhexить для читаемости
Не стесняемся, плюсуем!
Slym вне форума Ответить с цитированием
Старый 04.01.2013, 21:46   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
все соединения четко определяются по IP и порту
Прям уж так все?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Администрирование ch1pah1 БД в Delphi 5 11.01.2012 20:43
администрирование stupid ASP.NET 0 17.03.2011 00:03
Есть ли у IdTCPServer такое свойство как у ServerSocket: ServerSocket.Socket.ActiveConnectio ns? TwiX Работа с сетью в Delphi 3 07.03.2010 14:28