![]() |
Программирование сокетов.
Пытаюсь разобраться с сабжем по инфе с firststeps.ru. С небольшими изменениями делал все как там описано, но на стадии привязки сокета к имени(адресу) он ругается кодом ошибки 10038, мол, я пытаюсь вместо сокета функции bind() передать что-то другое ("An operation was attempted on something that is not a socket"). Самое странное, что непосредственно перед этим абсолютно без ошибок создается сам сокет и с указателем на него ничего не делается. Вот так это выглядит:
Код:
SOCKADDR_IN socketaddr; |
Поподробнее можно? Какой компилятор, что в исходниках (объявления переменой servsocket и т.д.).
btw. на сколько я понимаю, такой сокет будет слушать только локалхост (в сокаддре надо было прописать s_addr = INADDR_ANY) |
C++ Builder 6. Про локальный адрес прослушивания - это пока как заглушка стоит, потом прога тоже буде слушать только определенный адрес скорее всего. А сам сокет сделан вот так:
Код:
SOCKET servsocket; |
а по-моему надо:
Код:
servsocket = socket(AF_INET, SOCK_STREAM, 0); |
Дико извиняюсь, ошибка как всегда была нелепой. В функции, где я создавал сокет забыл потереть функцию его закрытия. В любом случае, огромное спасибо за внимание к проблеме! :молись:
PS: Посмотрел в winsock.h, там написано PF_INET = AF_INET... вот. |
Часовой пояс GMT +4, время: 18:03. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.