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

Вниз

WinSock и его функции   Найти похожие ветки 

 
Windows ©   (2007-01-09 20:46) [0]

program WinSock_Client;
{$APPTYPE CONSOLE}

uses
SysUtils,
winsock;
const
cPort = 33;
cSigExit = "q";
var
vWSAData : TWSAData;
vSocket : TSocket;
vSockAddr : TSockAddr;
buf : string;
begin
if WSAStartup($101,vWSAData)<>0 then Halt(1);
vSocket := socket(AF_INET,SOCK_STREAM,IPPROTO_IP);
if vSocket = INVALID_SOCKET then Halt(1);
FillChar(vSockAddr,SizeOf(TSockAddr),0);
vSockAddr.sin_family := AF_INET;
vSockAddr.sin_port := htons(cPort);
vSockAddr.sin_addr.S_addr := inet_addr("127.0.0.1");
if connect(vSocket,vSockAddr,SizeOf(TSockAddr)) = SOCKET_ERROR then Halt(1);
repeat
Readln(buf);
if send(vSocket,buf[1],Length(buf),0) = SOCKET_ERROR then Break;
//здесь
until buf = cSigExit;
closesocket(vSocket);
WSACleanup;
end.


даже стыдно спрашивать, тем более, что мне уже вроде как помогали, но так как тему закрыли, видимо ввиду ее исчерпанности, то пришлось создать новую...
но вот там где "//здесь" нужно что-то дописать, что бы коннект определить...
пробовал и WSAGetLastError, и recv, и send, и connect

функция recv\send возвращает WSAENOTCONN, а connect - WSAEISCONN, дак вот не работает...


 
Windows ©   (2007-01-10 10:55) [1]

неужели никто не знает!?


 
Сергей М. ©   (2007-01-10 11:07) [2]


> connect - WSAEISCONN


Судя по твоему коду, если дело дошло до строчки с вызовом send(), то вызов ф-ции connect() никак не мог вернуть SOCKET_ERROR (и уж тем более с кодом отказа WSAEISCONN)


> "//здесь" нужно что-то дописать, что бы коннект определить


Его не надо определять.
Он есть при выполнении условия :
send/recv(...) <> SOCKET_ERROR



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

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

Наверх




Память: 0.47 MB
Время: 0.076 c
3-1162891425
Ольга
2006-11-07 12:23
2007.01.28
из Grid в Excel


15-1168264073
Spaller
2007-01-08 16:47
2007.01.28
Компилятор паскаля


2-1168433997
NovaC
2007-01-10 15:59
2007.01.28
WinToDos &amp; CopyFile


4-1158337668
maxistent
2006-09-15 20:27
2007.01.28
Информация о процессе


15-1168260263
iXT
2007-01-08 15:44
2007.01.28
Продам в хорошие руки!