Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2011, 13:54   #1
helpprogramh
 
Регистрация: 22.11.2010
Сообщений: 5
По умолчанию проблемы с winsock

я написал клиент и сервер с использованием winsock.
клиент:
Код:
WSAStartup($101,D);
client:=socket(AF_INET,SOCK_STREAM,0);
if (client=INVALID_SOCKET) then
begin
  showmessage('socket error');
  form1.Close;
end;
addr.sin_family:= AF_INET;
addr.sin_addr.s_addr:=inet_addr('192.168.0.128');

addr.sin_port:= htons(3000);
err:=connect(client,addr,sizeof(addr));
если на одном компе запускать и клиент и сервак товсе нормально работает, хотя после
Код:
addr.sin_addr.s_addr:=inet_addr('192.168.0.128');
addr.sin_addr.s_addr=-2147440448,но все соединяется нормально.Если пробовать сервер и клиент на разных компах, соединенных через роутер, подсоединиться то err=-1.telnet подсоединяется к моему серваку.Кто может сказать в чем проблема
helpprogramh вне форума Ответить с цитированием
Старый 15.05.2011, 19:27   #2
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

адрес сервера за роутером задаётся доменным именем или айпишником?
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 15.05.2011, 19:42   #3
helpprogramh
 
Регистрация: 22.11.2010
Сообщений: 5
По умолчанию

ip,ip брал из ipconfig
helpprogramh вне форума Ответить с цитированием
Старый 15.05.2011, 19:57   #4
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

> ip брал из ipconfig

а вот это зря. Нужен ip роутера, а не локальный ip серверной машины. Хотя, как у вас при этом telnet соединялся с кем-то, загадка.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 15.05.2011, 22:48   #5
helpprogramh
 
Регистрация: 22.11.2010
Сообщений: 5
По умолчанию

я запускал серв на одном компе, и через телнет коннектился на него. Непонятно почему inet_addr отрицательное значение выдает, или это нормально?
helpprogramh вне форума Ответить с цитированием
Старый 15.05.2011, 23:28   #6
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

в общем на роутере нужно пробросить порт на серверный комп, и должно работать.

> или это нормально?

128 = $80, старший бит установлен, так что так и должно быть.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
WinSock Onekey Обсуждение статей 0 20.08.2010 12:04
Winsock n3sh C/C++ Сетевое программирование 2 25.07.2010 17:55
Winsock Client & Server [Проблемы и решения] iGlass Работа с сетью в Delphi 0 23.04.2010 16:29
WinSock profi Win Api 8 11.01.2010 21:13
WinSock Killbrum Win Api 1 18.10.2009 15:15