Форум: "Сети";
Текущий архив: 2003.07.24;
Скачать: [xml.tar.bz2];
ВнизСокеты Win32 Найти похожие ветки
← →
SkyRanger (2003-05-17 08:07) [0]Делаю так как написанно в книге: (правда там примеры на Си, но это фигня)
var
buf:string;
re : integer;
s : TSocket;
s1 : TSocket;
addr : TSockAddrIn;
begin
addr.sin_family:=AF_INET;
addr.sin_port:=htons(7500);
addr.sin_addr.S_addr:=htonl( INADDR_ANY );
try
s := socket(AF_INET, SOCK_STREAM, 0 );
except
ShowMessage("EXCEPT! Ошибка вызова socket:"+IntToStr(re)+" "+GetLastErrorStr());
end;
if (s<0) then ShowMessage("ошибка вызова socket:"+IntToStr(re)+" "+GetLastErrorStr());
try
re := bind( s, addr, sizeof( addr ) );
except
ShowMessage("EXCEPT! Ошибка вызова bind:"+IntToStr(re)+" "+GetLastErrorStr());
end;
if (re <> 0) then ShowMessage("ошибка вызова bind:"+IntToStr(re)+" "+GetLastErrorStr());
try
re := listen( s, 5 );
except
ShowMessage("EXCEPT! Ошибка вызова listen:"+IntToStr(re)+" "+GetLastErrorStr());
end;
if (re <> 0) then ShowMessage("ошибка вызова listen:"+IntToStr(re)+" "+GetLastErrorStr());
try
s1 := accept( s, NIL, NIL );
except
ShowMessage("EXCEPT! Ошибка вызова accept:"+IntToStr(re)+" "+GetLastErrorStr());
end;
if (re <> 0) then ShowMessage("ошибка вызова accept:"+IntToStr(re)+" "+GetLastErrorStr());
try
re:=recv(s1,buf,1,0);
except
ShowMessage("EXCEPT! Ошибка вызова recv");
end;
if (re < 0) then ShowMessage("ошибка вызова recv:"+IntToStr(re)+" "+GetLastErrorStr())
else
ShowMessage(buf);
end;
Он мне выдает ошибку 10093 WSANOTINITIALISED...
Я сделал все как в книге, так что должно работать а не работает! что тут может быть???
Книгу можете качнуть отсюда skyr.newmail.ru
← →
Malder (2003-05-17 11:00) [1]Сейчас придет Digitman и будет грязно ругаться по английски :-)
to SkyRanger
А где WSAStartup/WSACleanup ?
← →
SkyRanger (2003-05-17 12:05) [2]А конкретнее В КНИГЕ ТАК НАПИСАННО! Ща конечно гляну че это за звери, но желательно конкретнее...
>>Сейчас придет Digitman и будет грязно ругаться по английски :-)
А это почему???
← →
Malder (2003-05-17 12:24) [3]Ага, глянь что за зверь, лучше статьи почитай...
>>Сейчас придет Digitman и будет грязно ругаться по английски :-)
А это почему???
Любит он это дело :-)
← →
SkyRanger (2003-05-17 12:28) [4]Спасибо!
Все заработало!
Просто примеры под Unix а там дело немногопо другому обстоит! И в книге нефига не сказанно! :(
← →
Digitman (2003-05-19 08:51) [5]
> Malder
))
ну ты прямо из меня монстра какого-то делаешь)))
> SkyRanger
"Все заработало", говоришь ?)
И блоки exept - тоже ??!) Да ни в жисть !!)
"И в книге нефига не сказанно", говоришь ?)
Правильно, не сказано !)
Открываем хэлп на, например, ф-ции listen (да практически - на любой из ф-ций WinsockAPI) и читаем внимательно :
Return Values
If no error occurs, listen returns zero. Otherwise, a value of SOCKET_ERROR is returned, and a specific error code can be retrieved by calling WSAGetLastError.
И где здесь хоть какое-либо упоминание об ObjectPascal-исключениях ?)
Ну и как же "ругаться" опосля этого ?) по-аглицки ?) или по-непоаглицки , но аглицким прононсом ?)
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2003.07.24;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.015 c