WWW.ИСХОДНИКИ.РУ cpp.sources.ru
java.sources.ru web.sources.ru soft.sources.ru
jdbc.sources.ru asp.sources.ru api.sources.ru

  Форум на исходниках
  C / C++ / Visual C++
  SPX в WinSockets

СПРОСИТЬ  ОТВЕТИТЬ
профайл | регистрация | faq

Автор Тема:   SPX в WinSockets
ServerMouse опубликован 11-09-2001 15:40 MSK   Click Here to See the Profile for ServerMouse   Click Here to Email ServerMouse  
Hi ALL!

Никак не могу установить конект по SPX между дос клиентом и win32 сервером. У сервера делаю так:
sock = socket(AF_IPX,SOCK_STREAM,NSPROTO_SPX);
// Заполняем структуру pSockAddr
bind(sock,(PSOCKADDR)pSockAddr,sizeof(SOCKADDR_IPX);
WSAAsyncSelect(sock,m_hWnd,msg,Event);

Дос клиент неконектится по таймауту. Всё на локальной машине.

Emerald опубликован 11-09-2001 20:29 MSK     Click Here to See the Profile for Emerald  Click Here to Email Emerald     
Проверь адреса. Ведь ДОС VLM (насколько я помню) использует 14 цифр -> ############### для NODE ADDRESS, а вторая Win функция - 12 (IP). Может я не прав, но давно я с этим дела не имел...
ServerMouse опубликован 12-09-2001 10:10 MSK     Click Here to See the Profile for ServerMouse  Click Here to Email ServerMouse     
Нашёл. Глупая ошибка. Просто надо было сделать listen(sock,SOMAXCONN);
Теперь это работает, но как всегда не работает что-то другое... ;-)

Клиент прекрасно конектится, я ловлю событие FD_ACCEPT :
SOCKADDR_IPX addr;
PSOCKADDR_IPX pSockAddr=&addr;
int len=sizeof(addr);
MainSock=accept(SndSock,(PSOCKADDR)pSockAddr,&len);
WSAAsyncSelect(MainSock,m_hWnd,msg,FD_READ|FD_CONNECT);

Правильно ли я всё делаю с точки зрения идеологии сокетов вообще? Потому что обработчик событий от MainSock не вызывается, несмотря на то что клиент шлёт по установившемуся соединению данные.

ServerMouse опубликован 12-09-2001 10:39 MSK     Click Here to See the Profile for ServerMouse  Click Here to Email ServerMouse     
Да, и ещё, почему не получается установить событие от сокета на уже существующее. Т.е. так что бы несколько сокетов посылали окну одно и то же сообщение (WM_USER+1)?
Получается Out of memory.
ServerMouse опубликован 12-09-2001 12:38 MSK     Click Here to See the Profile for ServerMouse  Click Here to Email ServerMouse     
2Emerald : На самом деле все используют для NodeAddress 6 байт. К IP никакого отношения -- SPX базируется на IPX. Может это MAC-адрес?
Emerald опубликован 12-09-2001 15:19 MSK     Click Here to See the Profile for Emerald  Click Here to Email Emerald     
Я могу ошибаться - давно не работал с Netware. Конечно, NODE ADDRESS = MAC в системе IPX/SPX протокола. Что-то я здесь попутал...

СПРОСИТЬ  ОТВЕТИТЬ
Перейти:


E-mail | WWW.ИСХОДНИКИ.RU

Powered by: Ultimate Bulletin Board, Freeware Version 5.10a
Purchase our Licensed Version- which adds many more features!
© Infopop Corporation (formerly Madrona Park, Inc.), 1998 - 2000.