Forums Logo

Здравствуйте Гость ( Вход | Регистрация )

 
Reply to this topicStart new topicStart Poll

Каскадный · [ Стандартный ] · Линейный

> Socket Communication via WFC, проблемы c cokeтом

juniorE
post Вторник, 27 ноября 2007, 19:45
Отправлено #1


Новичок
*

Группа: Пользователи
Сообщений: 4
Регистрация: 13 нояб. 2007
Из: Берлин
Пользователь №: 24 352





привет всем.
заранее извеняюсь, если мои вопрос кому-то покажется тривиальным (в форуме на тему сокет , я не нашла никакого ответа)
Я пытаюсь написать клиент-программу, которая работает на базе сокета и должен соединятся с сервером (localhost) используя WFC. Моя функция
выглядит следующим образом (использую Palib ).

Я все тестирую на Nintendo Lite для WIFI исолзую Linksys WRT54G.
Когда я все стартую, мой клеинт не находит сервер. Пожалуисто помогите кто может.
//
//Init socket
int PA_InitSocket(int *sock,char *host,int port)
{
unsigned long ip;
struct sockaddr_in servaddr;
*sock = socket(AF_INET, SOCK_STREAM, 0);
if (*sock<0)
{
iprintf ("Could not create socket \n");
return -1;
}
else
iprintf ("Socket is ok \n");
if(IS_INETADDR(host))
ip = PA_chartoip(host);
else
ip = *(unsigned long *)gethostbyname(host)->h_addr_list[0];
//iprintf ("IP from gethostbyname d\n", ip);
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(port);
servaddr.sin_addr.s_addr = ip;

if(connect(*sock, (struct sockaddr *) &servaddr, sizeof(servaddr)) == SOCKET_ERROR)
{
iprintf ("Could not connect to server \n");
return -1;
}
else
{
iprintf ("Connect to server \n");
return 1;
}
}

// in main()

char *host = "localhost";
int port = 5000;

User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cluster
post Вторник, 27 ноября 2007, 20:29
Отправлено #2


Флудер
*******

Группа: Пользователи
Сообщений: 6 651
Регистрация: 01 мая. 2005
Из: Электросталь
Пользователь №: 12 933





Вспоминается старый анекдот.
В чате:
ОНО: Пипл,дайте IP какого-нибудь лоха!!
Кто-то: 127.0.0.1
ОНО: Щас он сдохнет!!!!
*** ОНО вышло из чата.

Когда ты коннектишься на localhost - ты коннектишься на с DS'а на этот же DS. Сомневаюсь, что это то, что ты хочешь...
И что значит "не находит сервер"? В твоём коде нет проверки находит он его или нет.


--------------------
3DS: 4382-2018-2181
Nintendo Switch: SW-6807-3955-8188
Мой канал YouTube
Мой Twitter
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
juniorE
post Вторник, 27 ноября 2007, 23:20
Отправлено #3


Новичок
*

Группа: Пользователи
Сообщений: 4
Регистрация: 13 нояб. 2007
Из: Берлин
Пользователь №: 24 352





" Вспоминается старый анекдот...." grin.gif grin.gif grin.gif
я уже тоже начала сомневаться в названии хоста.. Но я ведь тестирую сервер локально, т.е он не в сети , а у меня на компе. Мне что тогда имя моего компа надо задавать kak host или IP который он (комп) получает от рутера?
"что значит "не находит сервер"?"->проверку я делаю так:

CODE
ip = *(unsigned long *)gethostbyname(host)->h_addr_list[0];
      //iprintf ("IP from gethostbyname %d\n", ip);
     servaddr.sin_family = AF_INET;
     servaddr.sin_port = htons(port);    
     servaddr.sin_addr.s_addr = ip;
   
    if(connect(*sock, (struct sockaddr *) &servaddr, sizeof(servaddr)) == SOCKET_ERROR)


пыталась так же использовать gethostbyaddr(), но пока безуспесшно. эта функция что не имплементирована в Wifi не знаешь?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cluster
post Вторник, 27 ноября 2007, 23:23
Отправлено #4


Флудер
*******

Группа: Пользователи
Сообщений: 6 651
Регистрация: 01 мая. 2005
Из: Электросталь
Пользователь №: 12 933





Тут ты не делаешь эту проверку, ты только проверяешь удалось ли подключиться... Если хочешь подключиться к компу, указывай его IP.

И зачем тебе на форуме обсуждения сокетов? Это же обычные берклиевые сокеты, они такие же как на компе.


--------------------
3DS: 4382-2018-2181
Nintendo Switch: SW-6807-3955-8188
Мой канал YouTube
Мой Twitter
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
juniorE
post Вторник, 27 ноября 2007, 23:33
Отправлено #5


Новичок
*

Группа: Пользователи
Сообщений: 4
Регистрация: 13 нояб. 2007
Из: Берлин
Пользователь №: 24 352





я просто в теме "берклиевые сокеты" +nintendo новичок, поетому и спрашиваю в вашем форуме.

ps Если что извеняюсь:-)
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Cluster
post Вторник, 27 ноября 2007, 23:38
Отправлено #6


Флудер
*******

Группа: Пользователи
Сообщений: 6 651
Регистрация: 01 мая. 2005
Из: Электросталь
Пользователь №: 12 933





Лучше сначала на компе тренируйся с сетью работать, а потом на DS портируй smile.gif


--------------------
3DS: 4382-2018-2181
Nintendo Switch: SW-6807-3955-8188
Мой канал YouTube
Мой Twitter
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
juniorE
post Вторник, 27 ноября 2007, 23:56
Отправлено #7


Новичок
*

Группа: Пользователи
Сообщений: 4
Регистрация: 13 нояб. 2007
Из: Берлин
Пользователь №: 24 352





в любом случае спасибо тебе,cluster, за совет и за то что не проигнорировал.
Может быть етот информация поможет другим таким же начинающим как и я..
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
 

Упрощённая версия Сейчас: Чт., 10 июля 2025, 17:02
Skin Designed (c) by Rooq.net, All Rights Reserved.
Invision Power Board Database Error  

There appears to be an error with the database.
You can try to refresh the page by clicking here.

Error Returned

We apologise for any inconvenience
пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ GBX.ru пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ.