Форум: "Сети";
Текущий архив: 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.46 MB
Время: 0.006 c