Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.05.06;
Скачать: CL | DM;

Вниз

Проблема с сообщением клиента-серверу!!!   Найти похожие ветки 

 
dimich ©   (2002-02-21 16:25) [0]

У меня по нажатию на кнопку должно передаваться две текстовые строки серверу из edit1 и edit2 в memo1. А на сервере при чтении выдается ошибка 10057 on API "recv".


 
Wonder ©   (2002-02-21 16:37) [1]

WSAENOTCONN (10057) Socket is not connected
A request to send or receive data was disallowed because the socket is not connected and (when sending on a datagram socket) no address was supplied.

An application attempted an input/output network function call before establishing an association with a remote socket (i.e. before calling connect() or accept()).

А связь-то у тебя установлена?


 
Digitman ©   (2002-02-21 16:39) [2]

и - кнопка-то здесь причем ?))


 
dimich ©   (2002-02-21 16:39) [3]

Вот тото и оно что связь....ай блин яж её сам уничтожаю при закрытии формы...спасибо...на мысль натолкнул


 
dimich ©   (2002-02-21 16:55) [4]

Можно пример простейшего приложения когда клиент посылает серверу сообщение...у меня вроде долно все работать , но никак не могу понять в чем проблема. Заранее благодарен!!!


 
Digitman ©   (2002-02-21 17:02) [5]

что есть у тебя "клиент" и что - "сервер" ?


 
Wonder ©   (2002-02-21 17:04) [6]

http://delphi.mastak.ru/articles/sockadv/index.html


 
dimich ©   (2002-02-21 17:06) [7]

На сервере имеется БД с двумя полями "ФИО" и "Состояние"(там либо зачет либо незачет).
А клиент должен послать ФИО и состояние , а на сервере в БД вбивается эти два сообщения и все.


 
SerVS - S   (2002-02-21 17:08) [8]

Посмотри в Delphi6\Demos\Internet, там есть пример чата на базе сокетов. И еще куча полезных примеров :))


 
dimich ©   (2002-02-21 17:13) [9]

Согласен...я смотрел, делаю как там написано, но вот где-то я ошибся теперь ищю...


 
Wonder ©   (2002-02-21 17:15) [10]

Тогда текст посыла и приема давай...


 
dimich ©   (2002-02-21 17:20) [11]

проверьте меня...
Я отсылаю клиентом текст через

form1.clientsocket1.Open;
form1.ClientSocket1.Socket.SendText(edit1.text);

и получаю сервером

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
begin
serversocket1.open;
memo1.lines.add(Socket.ReceiveText);
end;


 
dimich ©   (2002-02-21 17:23) [12]

Кажется заработала окаянная:)))
Теперь вот надо решить вопрос , а что если сервер отрубился и потом заново подрубился...Как клиенту быть?


 
SerVS - S   (2002-02-21 17:30) [13]

ServerSocket.Open надо раньше делать!!! Гденибудь в другом месте!


 
dimich ©   (2002-02-21 17:39) [14]

И зачем надо ServerSocket.open раньше делать?
У меня тут по ходу вопросик, а как можно сделать чтобы в БД на одной строке все было, а не в две как сейчас.
procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
begin
serversocket1.open;
table1.Open;
table1.edit;
table1.Fields[0].asstring:=Socket.ReceiveText;
table1.Fields[1].asstring:=socket.ReceiveText;
end;


 
SerVS - S   (2002-02-21 17:49) [15]

1.Серсер надо открыть чтобы он начал прослушивание порта, иначе клиент его просто ненайдет. Если ты говоришь что у тебя ЭТО както работает, быстрей всего в проге еще гдето есть вызов Open.
2. Я непонял второй вопрос. Что именно ты хочешь сделать "на одной строке все было, а не в две как сейчас"?
3.На будущее: К полям нужно обращяться по имени, а не по номеру.
После едит нужно делать пост.


 
dimich ©   (2002-02-21 17:57) [16]

У меня сейчас
-------------------------
FIO | Sost |
-------------------------
Макаров | |
-------------------------
Незачет | |
-------------------------
А мне надо в одну строку Макаров Незачет. Отображаются данные через DBgrid.


 
SerVS - S   (2002-02-21 18:04) [17]

with Table1 do begin
edit;
FieldByName("FIO").AsString := "";
FieldByName("Sost").AsString := "";
post;
end;


 
Digitman ©   (2002-02-21 18:18) [18]

>dimich
Так ты с socket-транспортом разобрался что ли ? За БД взялся уже ? Ты транспорт отладь, чтобы работал как положено, а уж потом "наворачивай" всякие там "таблицы", "поля" и иже с ними)


 
dimich ©   (2002-02-22 08:22) [19]

Спасибо за совет...приму к сведению и доведу до ума socket.



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

Текущий архив: 2002.05.06;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.01 c
4-17755
JAndrey
2002-02-28 07:13
2002.05.06
Как заблокировать ТОЛЬКО мышь?


1-17580
mda
2002-04-20 02:44
2002.05.06
Можно ли както узнать, было ли обращение к компьютеру со стороны


7-17711
davile
2002-02-09 15:26
2002.05.06
COM порт


1-17554
D.R.
2002-04-20 23:14
2002.05.06
Экспорт в Excel


3-17496
Limonad
2002-04-12 14:53
2002.05.06
Знатоки, почему по выходу из приложения программа ругается