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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.09.2007, 22:55   #1
Antoha
Пользователь Подтвердите свой е-майл
 
Аватар для Antoha
 
Регистрация: 21.08.2007
Сообщений: 46
По умолчанию TCPServer и TCPClient

Я пишу чат в котором использую TCPServer и TCPClient. Проблема в том, что во время роботы программы порты клиента и сервера можно поменять только один раз, т.е. в первый раз установил порты - все работает нормально, во второй раз - ошибка "Connect time out". Помогите пож...
Величайшая слава не в том, чтобы никогда не ошибаться, но в том, чтобы уметь подняться каждый раз, когда падаешь.
Конфуций
Antoha вне форума Ответить с цитированием
Старый 27.09.2007, 08:39   #2
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

А ты хоть деактивируешь компонент для начала ?
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 27.09.2007, 13:51   #3
Pitbull
детский тренер
Форумчанин
 
Аватар для Pitbull
 
Регистрация: 08.06.2007
Сообщений: 532
По умолчанию

сперва disconnect сделать нужно, перед тем , как повторно сonnect...
просто прога ожидает освобождения порта, а он занят , и через ttl -промежуток времени відается ошибка....
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
Pitbull вне форума Ответить с цитированием
Старый 27.09.2007, 18:49   #4
Antoha
Пользователь Подтвердите свой е-майл
 
Аватар для Antoha
 
Регистрация: 21.08.2007
Сообщений: 46
По умолчанию

Перед тем как приконнектитца к серверу программа берёт нужные данные из соответствующих переменных.
Во время работы программы если в первый раз установить порты, то все работает нормально. Затем Disconnect и снова устанавливаем порты, но при соединении возникает ошибка "Connect time out". Помогите пож...
Величайшая слава не в том, чтобы никогда не ошибаться, но в том, чтобы уметь подняться каждый раз, когда падаешь.
Конфуций
Antoha вне форума Ответить с цитированием
Старый 28.09.2007, 13:15   #5
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Вывод ? порты закрыты у клиента
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 28.09.2007, 22:03   #6
Antoha
Пользователь Подтвердите свой е-майл
 
Аватар для Antoha
 
Регистрация: 21.08.2007
Сообщений: 46
По умолчанию

Когда я делаю IdTCPServer.Active:=false и IdTCPClient.Disconnect(всё это я делаю на одно и тоже событие), то такие параметры как IdTCPServer.DefaultPort, IdTCPClient.Port остаются с предыдущими значениями и если вместо этих значений вставить что-то другое, то ошибка Connect time out.
Порты, проставленные в первый раз, работают даже после неудачной подстановки других портов и сообщения нормально передаются.
Может нужно как-то по другому завершать соединение, помогите пож...
Величайшая слава не в том, чтобы никогда не ошибаться, но в том, чтобы уметь подняться каждый раз, когда падаешь.
Конфуций
Antoha вне форума Ответить с цитированием
Старый 29.09.2007, 06:34   #7
Рустам
Форумчанин
 
Регистрация: 04.07.2007
Сообщений: 260
По умолчанию Вот как я делаю...

...
Public IP, Port, Text : String; - подставляй че надо...
...

Server.Active:=False;
Server.LocalPort:='<какой надо>';
Server.Active:=True;

Для отправки Используй Процедуру:

Procedure Sends(Text,Port,IP: String);
begin
Client.Active:=false;
Client.RemoteHost:=IP;
Client.RemotePort:=Port;
Client.Active:=True;
Client.Sendln(Text);
Client.Active:=false;
end;

Все работает...
Хорошо не там, где нас нет, а там, где нас еще небыло!!!

Последний раз редактировалось Рустам; 29.09.2007 в 06:37.
Рустам вне форума Ответить с цитированием
Старый 29.09.2007, 08:43   #8
KORN
Банхаммер
Участник клуба
 
Аватар для KORN
 
Регистрация: 17.02.2007
Сообщений: 1,754
По умолчанию

а те ваще зачем порты менять7 поставил один и юзаешь его... главное выбрать такой что бы его ни кто не юзал... по крайней мере я так всегда делаю...
Перед тем как спросить ищи на форуме и в GOOGLE
KORN вне форума Ответить с цитированием
Старый 29.09.2007, 15:09   #9
Antoha
Пользователь Подтвердите свой е-майл
 
Аватар для Antoha
 
Регистрация: 21.08.2007
Сообщений: 46
По умолчанию

Замена портов обязательна функция моей проги (такая постановка задачи)
Величайшая слава не в том, чтобы никогда не ошибаться, но в том, чтобы уметь подняться каждый раз, когда падаешь.
Конфуций
Antoha вне форума Ответить с цитированием
Старый 29.09.2007, 15:22   #10
Antoha
Пользователь Подтвердите свой е-майл
 
Аватар для Antoha
 
Регистрация: 21.08.2007
Сообщений: 46
По умолчанию

Рустам скажи пож... какими компонентами ты пользуешся, я не нашел в Delphi7 клиента и сервера с такими параметрами
Величайшая слава не в том, чтобы никогда не ошибаться, но в том, чтобы уметь подняться каждый раз, когда падаешь.
Конфуций
Antoha вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[TcpClient, TcpServer] или [ServerSocket, ClientSocket] работа через прокси DOLBY Работа с сетью в Delphi 2 17.09.2009 05:46
Передача файлов(exe) при помощи TCPServer и TCPClient Air Работа с сетью в Delphi 6 26.12.2008 23:26
Com Объекты и TcpServer part13an Работа с сетью в Delphi 0 23.07.2008 16:14
Serversocket,clientsocket и TCPserver, TcpClient prizrak1390 Компоненты Delphi 2 04.02.2008 08:10
TcpClient и TcpServer DOLBY Работа с сетью в Delphi 5 17.12.2007 10:43