Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.01.28;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.04 c
3-1162829092
DVM
2006-11-06 19:04
2007.01.28
Как быстро удалить все записи в ADOTable без SQL ?


15-1168186755
VolJinn
2007-01-07 19:19
2007.01.28
Еще задачка :)


2-1168436770
FIL-23
2007-01-10 16:46
2007.01.28
работа с константой


3-1163013159
ivan8511
2006-11-08 22:12
2007.01.28
Создать программно базу данных


8-1149096765
Михайлов Антон
2006-05-31 21:32
2007.01.28
прогрессив скин





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