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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2015, 23:23   #11
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,872
По умолчанию

Цитата:
Сообщение от WinCoder Посмотреть сообщение
Overbyte ICQ.
Это что-то новенькое.
northener вне форума Ответить с цитированием
Старый 22.01.2015, 23:55   #12
WinCoder
Заблокирован
 
Регистрация: 24.11.2014
Сообщений: 721
По умолчанию

Стилет ошибся на букву, я ошибся. С кем не бывает? ICS.
WinCoder вне форума Ответить с цитированием
Старый 23.01.2015, 10:06   #13
IliaIT
Форумчанин
 
Аватар для IliaIT
 
Регистрация: 17.03.2009
Сообщений: 977
По умолчанию

Цитата:
Сообщение от NerfDoriftar Посмотреть сообщение
Нужна ваша помощь.
Чтобы не было тупых вопросов от меня.
Обьяснение:
1.Клиент генерирует ключ.
2.Клиент подключается к серверу.
3.Сервер получает ключ и выводит в переменную.
Сама проблема: При заходе двух и более пользователей , ключ выводится не понятный , а иногда даже другому пользователю мой ключ.
И из-за этого сервер не может нормально проверить ключ и выдать данные клиенту.

Код:
   for i:= 0 to Form1.ServerSocket1.Socket.ActiveConnections-1  do
   begin
   Form1.ServerSocket1.Socket.Connections[i].SendText(G1+#13#10+G2+#13#10+G3+#13#10+G4+#13#10+G5+
        #13#10+G6+#13#10+G7+#13#10+G8+#13#10+G9+#13#10+G10+#13#10+G11+#13#10+G12+#13#10);
   end;
Если заходить только одному , тогда всё нормально.
Как только заходит второй , ему либо выдаётся мой ключ либо какой-то не понятный.
Как решить проблему?
вот у вас есть куча переменных типа "G", они не меняются после соединения, проверяйте свой код где это происходит.
вот так же есть посылка всем соединениям.
for i:= 0 to Form1.ServerSocket1.Socket.ActiveCo nnections-1 do
то есть это значит что посылает и вам и соседу и прочим одно и тоже, как и просили. у вас нет различий на вариант кто спросил или кто соединился.

делайте таблицу со списком пользователя и его хенделом сокета

а вообще есть свойство клиент конектион у ServerSocket. в нём входная переменная уже только нужный пользователь(ну почти всегда), и шлите ему сразу ответ без перебора. Socket.SendText()
Интуитивно понятный интерфейс - это такой интерфейс, для работы с которым нужна недюжинная интуиция.

Последний раз редактировалось IliaIT; 23.01.2015 в 10:10.
IliaIT вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Клиент-сервер (Сокеты) / Delphi unreal2x Помощь студентам 0 24.04.2012 17:50
сокеты - ошибка 10013 (delphi) dyonysos Работа с сетью в Delphi 5 10.03.2010 17:35
Сокеты в Delphi 2009 TzX Общие вопросы Delphi 11 09.02.2010 21:49
Сокеты в Delphi god110 Работа с сетью в Delphi 13 08.09.2009 11:20
Сокеты в Delphi Necro Работа с сетью в Delphi 11 24.04.2007 07:32