Форум программистов
 
Регистрация на форуме тут, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Как купить рекламу на форуме


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

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


Ответ
 
Опции темы Поиск в этой теме
Старый 29.12.2009, 17:31   #1
Sensizu
Otsukitakitte
Форумчанин
 
Аватар для Sensizu
 
Регистрация: 01.10.2009
Сообщений: 126
По умолчанию ServerSocket и ClientSocket

Доброго времени суток.
Пишу "простенький" чат, увы в кротчайшие сроки. Не совсем чат и прост, как минимум для меня, т.к. справится с одной проблемой не могу. Суть:

На форме чата лежит и ServerSocket, и ClientSocket. Ну как и во всех чатах на таких компонентах сервер должен создать порт а Клиент войти в порт. Ничего не получается, а если и получается, то просто угадыванием, и конечного результата это не даёт.
Кто может правильно предоставить как составить сокеты и какую информацию в них писать (ведь еще нужен socket.address если не ошибаюсь, а в статье, которую я читал, такого нет) - буду признателен.
Что бы как-то сделать это дело проще, предоставлю код:
Цитата:
procedure TchatForm.FormShow(Sender: TObject);
begin
ServerSocket.Socket.Close;
ServerSocket.Socket.Unlock;
ServerSocket.Port:=3000;
ServerSocket.Active:=True;

ClientSocket.Socket.Unlock;
ClientSocket.Port:=3000;
ClientSocket.Address:=loginform.uad d.text;
ClientSocket.Active:=True;
end;
Итог: Выдает ошибку "Запрашиваемое имя верно, но данные запрошеного вида не найдены". Почему так? И о каких данных идёт речь.
(мне нужна простая реализация, проблема только в том, что в примере, который у меня есть, отдельное приложение отвечает за сервер и отдельное за клиент, а мне нужно всё в одной программе. причём клиент подсоединяется только к указаному адресу)
Помог - ставь плюс.
$("question").onAnswer(function() { $(this).getItWright(true); });
Sensizu вне форума Ответить с цитированием
Старый 29.12.2009, 19:16   #2
betirsolt
Форумчанин
 
Регистрация: 20.07.2009
Сообщений: 421
По умолчанию

на сервер кидаешь ServerSocket и на клиент clientSocket соответственно,у ServerSocket в свойстве port выставь порт любой(но выше чем 1024),у clientSocket тоже в свойстве порт поставь тот же порт что ты поставил в ServerSocket,и в свойстве host у clientSocket напиши IP адресс компа на котором будет сервер
Уважаемые модераторы, Я всячески стараюсь не нарушать правила сайта, будьте снисходительны
betirsolt вне форума Ответить с цитированием
Старый 29.12.2009, 19:34   #3
Sensizu
Otsukitakitte
Форумчанин
 
Аватар для Sensizu
 
Регистрация: 01.10.2009
Сообщений: 126
По умолчанию

betirsolt, спасибо конечно) я это более-менее понимаю, но такое дело:
вот будет у меня программа (отдельная) где будет лежать СерверСокет. И буде вторая, где будет лежать КлиентСокет. А если не ошибаюсь, то при ServerSocketOnRead как раз выводит текст в чат. А из этого следует? Что Мемо (чат) и СерверСокет должны лежать на одной форме (т.е. в одной программе). А Текст который шлёт клиент (вместе с клиентом) в другой.

А как сделать что бы на форме было:
ClientSocket
ChatMemo

И к примеру всё. А на второй только сервер, который и будет слать текст в ChatMemo??? Вот в чём проблема.
Помог - ставь плюс.
$("question").onAnswer(function() { $(this).getItWright(true); });
Sensizu вне форума Ответить с цитированием
Старый 29.12.2009, 20:37   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,003
По умолчанию

http://pblog.ru/?p=91
http://pblog.ru/?p=100
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 29.12.2009, 21:12   #5
Sensizu
Otsukitakitte
Форумчанин
 
Аватар для Sensizu
 
Регистрация: 01.10.2009
Сообщений: 126
По умолчанию

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

Благодарю.
Помог - ставь плюс.
$("question").onAnswer(function() { $(this).getItWright(true); });
Sensizu вне форума Ответить с цитированием
Старый 30.12.2009, 00:09   #6
aleks8091
Пользователь
 
Регистрация: 17.12.2009
Сообщений: 14
По умолчанию

Подскажите как со стороны сервера сделать Авторизацию ?? Там вроде через базы данных чтоли? какие компоненты использовать??
aleks8091 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме 20000 рублей в месяц

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ClientSocket и ServerSocket Blood o men Работа с сетью в Delphi 2 25.11.2009 11:36
ClientSocket/Serversocket SendText Lime Работа с сетью в Delphi 10 08.10.2009 18:52
Serversocket,clientsocket prizrak1390 Работа с сетью в Delphi 10 21.04.2009 15:04
Работа с ServerSocket и ClientSocket AlDelta Работа с сетью в Delphi 12 28.09.2008 10:18
Events в ServerSocket и ClientSocket LiFeStyle Работа с сетью в Delphi 3 22.11.2007 22:26


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS