Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Вниз

TSocketClient   Найти похожие ветки 

 
nickolayLI   (2002-10-16 12:24) [0]

пишу не большой чатик, у меня запущен сервер, у клиентов, клиентская часть, так вот вопросик сам, как сказать клиенту что сервер допустим больше не доступен, и и что бы клиент тоже закрывал соединение.
пишу следующее на сервере
procedure TForm1.SocketServer1Disconect(..);
begin
Socket.Connections[0].SendText("C");
Socket.Connections[0].Close;
end;

у клиента

procedure TForm1.ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
begin
if Trim(Socket.ReceiveText) = "C" then begin
Memo1.Lines.Add("Not Connecting");
ClientSocket1.Active:=False;
end;
end;
но ничегоподобного на клиенте не происходит :(, и еще хотелось бы что бы клиент после отключения сервера, продолжал поиск сервера до тех пор пока не найдет.

спасибо


 
KaRaT   (2002-10-16 12:39) [1]

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


 
KaRaT   (2002-10-16 12:42) [2]

onDisconnect у клиента...


 
Digitman   (2002-10-16 12:43) [3]


> как сказать клиенту что сервер допустим больше не доступен


А зачем серверу "трепаться" лишнего ? Он просто переходит (когда ему вздумается) в неактивное состояние (ServerSocket.Active := False) и у всех его клиентов возникает событие OnDisconnect() - это и есть самый достоверный факт прекращения сеанса обслуживания клиента по инициативе сервера.


> хотелось бы что бы клиент после отключения сервера, продолжал
> поиск сервера до тех пор пока не найдет


Да на здоровье ! Кто ж ему мешает ? Какие проблемы-то ?


 
nickolayLI   (2002-10-16 12:53) [4]

хм.. ну сделал так
на клиенте
procedure TForm1.ClientSocket1Disconnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
memo1.lines.add("server disconect...");
end;

на сервере

rocedure TForm1.CloseClick(Sender: TObject);
begin
ServerSocket1.Active:=False;
Close;
end;
после того как форма закрывается, сервер, на клиент должно появится сообщение в мемо поле а нету не фига :(


 
nickolayLI   (2002-10-16 12:57) [5]

и еще как перехватить сообщение об ошибки, если допустим сервер не доступен?


 
nickolayLI   (2002-10-16 13:05) [6]

всё сделал, только вот как сделать чтобы клиент постоянно опрашивал сервер, даже тогда когда он вырублен...


 
nickolayLI   (2002-10-16 13:06) [7]

а всё отбой сделал :) сорри...
в первый раз, в первый класс :)


 
VID   (2002-10-16 15:36) [8]

Как обрабатываешь событие onClientError у сервера, и onError у клиента ? (КОД ПОКАЖИ)


 
nickolayLI   (2002-10-17 12:10) [9]

на сервере
onClientError;
ErrorCode:=0;
....

на клиенте
onError
ErrorCode := 0;
....



 
alex_ustasu   (2002-10-22 11:36) [10]

Привет коллеги. Поделитесь знанием. Как вы подавляете выдачу сообщения об Exception, когда TCLientSocket пытается соединиться (Active:=true)с неактивным TServerSocket ?
У меня задача найти свои серверы в локалке и соединиться с одним из найденных. Перехват Exception никак не получается.
Неужели выход только в использованием функций Winsock ?



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2002.12.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.007 c
6-51879
Дубогрей Сергей
2002-10-16 17:46
2002.12.16
Интернет


1-51754
vuk
2002-12-03 21:39
2002.12.16
Кто-нибудь работал с двумерными штрихкодами PDF417?


1-51718
Immortal_Xak
2002-12-06 12:01
2002.12.16
Help Password


3-51567
div
2002-11-27 07:49
2002.12.16
Потеря данных при некор.завершении программы


3-51575
Юра
2002-11-27 11:29
2002.12.16
Инициализация BDE





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский