Главная страница
    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.44 MB
Время: 0.037 c
15-1168075168
Slider007
2007-01-06 12:19
2007.01.28
С днем рождения ! 6 января


15-1168252422
cando
2007-01-08 13:33
2007.01.28
обнаружение врага


4-1158090413
Den MoroZ
2006-09-12 23:46
2007.01.28
Перехват NtOpenFile из ntdll


2-1168759566
Garacio
2007-01-14 10:26
2007.01.28
из ListView в ComboBox


9-1142680672
KiberKot
2006-03-18 14:17
2007.01.28
TFK Model Edit





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский