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

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

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.02.2011, 21:51   #1
Fiery Fox
Пользователь
 
Регистрация: 03.02.2010
Сообщений: 28
По умолчанию Соккеты

И так. Работаю с соккетами и пишу небольшую программку.
Функционал в исходинках
Есть проблема - при текущих настройках выводит соккет эррор, хотя вроде бы настроено нормально.
Айпи в исходнике подставите, так как я свой для сохранности убрал)
Где сервер, где клиент написано
Просмотрите пожалуйста, где ошибаюсь.

--
http://www.uafile.com/file/18895/miniprj-rar.html
вот архив.
сюда прикрепить не смог, на народ не заливается изза маленького размера
если надо - перезалью.
Fiery Fox вне форума Ответить с цитированием
Старый 19.02.2011, 21:55   #2
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

а в чем именно проблема?
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 19.02.2011, 21:59   #3
Fiery Fox
Пользователь
 
Регистрация: 03.02.2010
Сообщений: 28
По умолчанию

Цитата:
Сообщение от ArtGrek Посмотреть сообщение
а в чем именно проблема?
Когда стоят при билде порты как сейчас, то просто не хочет передавать сообщения. Самые обычные (MSG{сообщение}). Если клиент отключается, на сервере выдает
Цитата:
Asynchronous socket error 10061
Если везде ставить одинаковые порты, то тоже их не передает.
Не понимаю где я наломал.
Fiery Fox вне форума Ответить с цитированием
Старый 19.02.2011, 22:13   #4
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

значит цлиент не нашел сервер
вот попробуите
Вложения
Тип файла: rar Sockets.rar (342.8 Кб, 16 просмотров)
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 19.02.2011, 22:26   #5
Fiery Fox
Пользователь
 
Регистрация: 03.02.2010
Сообщений: 28
По умолчанию

Это работает как у меня на пк, как и скидывая клиент знакомым.
В чем ошибка у меня?
Fiery Fox вне форума Ответить с цитированием
Старый 19.02.2011, 22:36   #6
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

при создании у тебя едиты пустые, а потом создание формы больше не происходит
надеюсь понимаеш к чему ето
Код:
procedure TForm2.FormCreate(Sender: TObject);
begin
cs.Host:=edit1.Text; //Наш хост, тобиш ип который вы будете вписывать в edit1
cs.port:=123; //Указываем порт в нашем случае инфа будет передоваться через 123 порт
serversocket1.port:=1234;//Назначаем порт
serversocket1.active:=true//начинаем слушать порт
end;
и здесь тоже

Код:
procedure TForm2.FormCreate(Sender: TObject);
begin
cs1.Host:='(*!!тут ваш айпи!!*)';
cs1.port:=1234; //Указываем порт в нашем случае инфа будет передоваться через 123 порт
cs1.Active:=true;
Application.ShowMainForm:=false; // Запрещаем показ главной формы
ShowWindow(application.Handle,SW_HIDE); // Прячем приложение
serversocket1.port:=123;//Назначаем порт
serversocket1.active:=true//начинаем слушать порт
end;
ЗЫ. просто скопирывал чужои текст, в сокетах если не поимеш как все работает, ничего стоюшего не зделаеш
VirusN13

Последний раз редактировалось ArtGrek; 19.02.2011 в 22:41.
ArtGrek вне форума Ответить с цитированием
Старый 19.02.2011, 23:15   #7
Fiery Fox
Пользователь
 
Регистрация: 03.02.2010
Сообщений: 28
По умолчанию

Спасибо)
Я сразу и не заметил
перенес это на кнопку и заработало.
Единственная проблема - модемы(?) там где меняется один из айпишников.
Код:
GetLocalIP+' '+tmp+' '+GetSystemComputerName
там где в первом и втором случае передаются разные айпишники
Цитата:
192.168.х.х х.128.ххх.ххх
255.255.255.255
хххх-ПК
например.
но я думаю, тут уже ничего не сделать :\
Fiery Fox вне форума Ответить с цитированием
Старый 19.02.2011, 23:54   #8
Fiery Fox
Пользователь
 
Регистрация: 03.02.2010
Сообщений: 28
По умолчанию

Цитата:
Сообщение от ArtGrek Посмотреть сообщение

и здесь тоже

Код:
procedure TForm2.FormCreate(Sender: TObject);
begin
cs1.Host:='(*!!тут ваш айпи!!*)';
cs1.port:=1234; //Указываем порт в нашем случае инфа будет передоваться через 123 порт
cs1.Active:=true;
Application.ShowMainForm:=false; // Запрещаем показ главной формы
ShowWindow(application.Handle,SW_HIDE); // Прячем приложение
serversocket1.port:=123;//Назначаем порт
serversocket1.active:=true//начинаем слушать порт
end;
ЗЫ. просто скопирывал чужои текст, в сокетах если не поимеш как все работает, ничего стоюшего не зделаеш
тут я комментарий добавил с айпи сам, что бы свой уже не палить + порты у меня вроде бы нормально выставлены. то к ним комментарии уже были скопированы из источников.)
Fiery Fox вне форума Ответить с цитированием
Старый 20.02.2011, 00:03   #9
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

не понял в чем шас проблема?
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 20.02.2011, 00:34   #10
Fiery Fox
Пользователь
 
Регистрация: 03.02.2010
Сообщений: 28
По умолчанию

Та уже практически не в чем.
Все работет)
Разве что если, как я понял, роутер, то не подключается)
Fiery Fox вне форума Ответить с цитированием
Ответ


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