|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
13.12.2009, 15:53 | #301 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Опишите словесно, что вы хотите сделать. По видимому вход по паролю на сервер. Ошибки у вас в процедурах, в какой именно можно узнать, заключив вызов процедуры в структуру Try..Except..End;
Код:
Вообще, тяжело разбираться с простыми вырезками кода, без пояснений. Логически процедуры уже себя некорректно ведут в общем коде чата. А если вы пишете заново самостоятельно, то у вас уже все с кодировкой пакета видимо изменено. Покажите свою структуру, тогда смогу помочь.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
13.12.2009, 17:50 | #302 |
Пользователь Подтвердите свой е-майл
Регистрация: 30.04.2008
Сообщений: 78
|
Ну мне нужно что бы клиент передавал на сервер пароль и текст.
А сервер ему в ответ присылал зашифрованный текст. Должна быть поддержка нескольких клиентов. Код:
Последний раз редактировалось ManU; 13.12.2009 в 17:53. |
13.12.2009, 23:25 | #303 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
В исходном варианте, после коннекта клиента, сервер шлет запрос на ник по коду "1", клиент тут же отвечает пакетом "1+никнейм", после получения этого пакета, сервер готовит список пользователей и отправляет по коду "2+список", ...все, наступает молчание, сервер ждет от клиентов пакетов с текстом.
Вам следует вместе с никнеймом отсылать и пароль: "1+никнейм+пароль", примените разделитель, символ, который с клавиатуры нельзя ввести, например Chr(152); Сервер приняв пакет, в том же кейсе на пункт 1: запишет никнейм, запишет в переменную пароль, посмотрит файл паролей, если и никнейм и пароль совпадут, только тогда последует формирование списка и его отправка, в противном случае соединение разорвется: ServerSocket.Socket.Connections[i].Close;
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
14.12.2009, 16:48 | #304 |
Пользователь Подтвердите свой е-майл
Регистрация: 30.04.2008
Сообщений: 78
|
Нашел ошибку
Код:
|
13.02.2010, 04:37 | #305 | |
Пользователь
Регистрация: 01.10.2009
Сообщений: 10
|
Цитата:
Вопщем кинул на форму StatusComboBox в FormCreate добавил Код:
Код:
|
|
16.02.2010, 17:40 | #306 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Сначала нужно разобраться со структурой и кодировкой пакетов. Вот такая система сейчас в чате:
Код:
Вам нужно ввести еще одну команду. Пусть ее код в заголовке будет 4, тогда вы смело составляете пакет вот так: Код:
Код:
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 16.02.2010 в 17:49. |
17.02.2010, 02:42 | #307 |
Пользователь
Регистрация: 01.10.2009
Сообщений: 10
|
не получается
делаю так... сюда добавляем Код:
Код:
Код:
в Код:
Код:
Код:
ps; в delphi недавно |
17.02.2010, 17:38 | #308 | ||
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
mishqa35, внимательнее, ... ClientSocketRead событие клиентского сокета, в Case в пункте 4 не может быть ClientSocket.Socket.SendText('4'+St atusBox);, ибо это запрос на перевод статуса, отсылаемый клиентом. Эту команду вешаем на кнопку "сменить статус", или на OnChange вашего StatusComboBox. В Case здесь в пункте 4 нужен алгоритм:
Цитата:
Аналогично, ServerTimerTimer процедура серверного сокета, ...в Case в пункте 4: Цитата:
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 17.02.2010 в 17:45. |
||
21.02.2010, 16:53 | #309 |
Пользователь
Регистрация: 01.10.2009
Сообщений: 10
|
Спасибо Beermonza, буду пробывать..
Еще интересует вопрос воп при получении собобщения в чат, меняется Caption формы.. как это убрать? |
21.02.2010, 17:10 | #310 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
В конце событий сокетов на прием пакетов запишите выправление заголовка: Form1.Caption := {текст};
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
обновление в блоге - Создание клиент-сервера | Pblog | Обсуждение статей | 0 | 03.10.2007 17:12 |
обновление в блоге - Диплом. Создание и продвижение сайта - готовь сани летом, а дипл | Pblog | Обсуждение статей | 0 | 31.08.2007 20:00 |
обновление в блоге - USB Холодильник | Pblog | Обсуждение статей | 0 | 25.06.2007 14:13 |
обновление в блоге - О ярлыках | Pblog | Обсуждение статей | 0 | 27.05.2007 03:17 |