Подскажите, pls, где грабли?
Написана программулина, которая по винсокету отправляет сообщения. Используется для этих целей TCP и UDP. Откомпилирована в BC++ 5.0 по Win2k SP2. Под 2k работает без проблем. Как только запускаю под Win98se сразу возникает ошибка WSAEAFNOSUPPORT при попытке создания сокета. Сокет создается следующим образом:
SOCKET m_s = socket(AF_INET, iProtocol, 0)
где iProtocol принимает значения SOCK_DGRAM или SOCK_STREAM.
В чем дело — не пойму...
Re: socket - в 98ом вызывает ошибку WSAEAFNOSUPPORT
Здравствуйте Anthony, Вы писали:
A>Народ!
A>Подскажите, pls, где грабли? A>Написана программулина, которая по винсокету отправляет сообщения. Используется для этих целей TCP и UDP. Откомпилирована в BC++ 5.0 по Win2k SP2. Под 2k работает без проблем. Как только запускаю под Win98se сразу возникает ошибка WSAEAFNOSUPPORT при попытке создания сокета. Сокет создается следующим образом:
A>SOCKET m_s = socket(AF_INET, iProtocol, 0)
A>где iProtocol принимает значения SOCK_DGRAM или SOCK_STREAM.
A>В чем дело — не пойму...
Это странно. Судя по MSDN такая ошибка возвращается, если не поддерживается протокол. Может у тебя TCP/IP не установлен/отключен/ещё что-то страшное?
Делай что должно, и будь что будет
Re[2]: socket - в 98ом вызывает ошибку WSAEAFNOSUPPORT
Здравствуйте SergH, Вы писали:
SH>Это странно. Судя по MSDN такая ошибка возвращается, если не поддерживается протокол. Может у тебя TCP/IP не установлен/отключен/ещё что-то страшное?
Да, нет протокол установле (сеть работает)...
Re[3]: socket - в 98ом вызывает ошибку WSAEAFNOSUPPORT
Думаю, что ошибка не в коде, поскольку у меня он выглядит очень похоже.... Думаю проблема связана с компиляцей/линкованием. Почему я так думаю? Потому что, кроме всего прочего функция FormatMessage тоже работает неправильно (выдает какой-то бред, а не текстовую информацию об ошибке)... Какие есть мысли?
Re[5]: socket - в 98ом вызывает ошибку WSAEAFNOSUPPORT
Здравствуйте Anthony, Вы писали:
A>Здравствуйте SergH, Вы писали:
A>Думаю, что ошибка не в коде, поскольку у меня он выглядит очень похоже.... Думаю проблема связана с компиляцей/линкованием. Почему я так думаю? Потому что, кроме всего прочего функция FormatMessage тоже работает неправильно (выдает какой-то бред, а не текстовую информацию об ошибке)... Какие есть мысли?
Есть!
ИМХО, FormatMessage не может выдовать сообщения для ошибок библиотеки WinSock! :-Или лучше вообще приведи-ка лучше проблемный код.
Re[6]: socket - в 98ом вызывает ошибку WSAEAFNOSUPPORT
Здравствуйте Алекс, Вы писали:
A>ИМХО, FormatMessage не может выдовать сообщения для ошибок библиотеки WinSock! :-Или лучше вообще приведи-ка лучше проблемный код.
Под Win XP может, причем для этого ничего особенного делать не надо.
Делай что должно, и будь что будет
Re[6]: socket - в 98ом вызывает ошибку WSAEAFNOSUPPORT
Здравствуйте Алекс, Вы писали:
А>Есть! А>ИМХО, FormatMessage не может выдовать сообщения для ошибок библиотеки WinSock! :-Или лучше вообще приведи-ка лучше проблемный код.
Под 2k она почему то работет без проблем! А код, как я сказал, совершенно не проблемный и выглядит почти также как и тот, который ты привел... Повторяю: под 2к код работает на ура, под 98ым не может даже создать сокет. Такое впечатление, что функции socket(...) скармливаются совершенно не те параметры, хотя дебаггил перед вызовом функции — параметры правильные. Загадка, короче! Да, кстати, переды вызовом функции проверял на наличие установленного протокола (EnumProtocols) — все верно — протокол наличиствует! Все равно tnx за поддержку!