Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Winsock - не удается послать сообщение от сервера клиенту [D7, WinXP]


bodun ©   (2009-09-24 01:30:00) 

Работаю с клиентом в процедуре:

 s := Sock;
 if s = invalid_socket then exit;
 vsize := sizeof(tsockaddr);
 getpeername(s, SockName, vsize);
 writeln('client accepted, remote address',inet_ntoa(SockName.sin_addr));
 vsize := sizeof(bufsize);
 getsockopt(s,sol_socket,so_rcvbuf,pchar(@bufsize),vsize);
 writeln('receive buffer size ',bufsize);
 setlength(abuf,bufsize);
 repeat
   vsize := recv(s,abuf[0],bufsize,0);
   if vsize<=0 then break;
   setlength(vbuf,vsize);
   lstrcpyn(@vbuf[1],@abuf[0],vsize);
   GetCommand(vbuf,s); <------ Тут вызывается функция
 until vbuf = 'q';
 writeln('client disconnected, remote address ',inet_ntoa(SockName.sin_addr));
 setlength(abuf,0);
 closesocket(s);


Вызывается функция GetCommand(vbuf,s); где следующих код должен послать сообщение:
if send(s,buf[1],length(buf),0)=socket_error then
   WriteLn('Error') else WriteLn('Ok');

Пишет что ошибки не было, но к клиенту данные не приходят((


Сергей М.   (2009-09-24 08:18:00) [1]


> Sock


Что находится в этой переменной ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо