Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 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
6-78015
Demn
2003-05-16 14:19
2003.07.24
Время рабочей станции


7-78165
BoTToN!k
2003-05-14 14:31
2003.07.24
адресная книга


14-78044
Andryk
2003-07-09 15:24
2003.07.24
Что с отправкой сообщений?


14-78100
Vlad Oshin
2003-07-07 18:03
2003.07.24
Сутки. Рассказ.


1-77931
Aleksandr
2003-07-10 15:47
2003.07.24
Как правильно вычислить координаты текста для потомка TLabel?





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