Главная страница
    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.007 c
1-77871
Jumbo
2003-07-13 14:48
2003.07.24
Из одного проекта - две программы (Lite и Full версии)


14-78053
Alexsey Orlov
2003-07-09 21:15
2003.07.24
Помогите


1-77866
Chadnov
2003-07-13 17:09
2003.07.24
[MDI]Как из дочернего окна узнать общее количество дочерних окон?


11-77814
IZVER
2002-11-05 17:01
2003.07.24
локализация KOL-приложений


4-78195
Zevsus
2003-05-22 11:33
2003.07.24
отловить WM_SPOOLERSTATUS





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