Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> TcpClient и TcpListener, вопрос новичка 
V
    Опции темы
sindi8
Дата 30.5.2006, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 6.6.2005
Где: Москва

Репутация: нет
Всего: нет



Добрый день.
Встала задача управлять программой с одного компа прогой на другом компе. Почитал форум, посмотрел кто что как делает - если правильно понял для этого нужно либо использовать сокеты, либо TcpClient и TcpListener (что внутри видимо тоже базируется на сокетах, но использование этих классов на первый взгляд проще). Посмотрел пример вот отсюда, запихал на серверном приложении прослушивание в отдельный поток. Но при закрытии клиента на сервере выплевывается ошибка о том, что "Удаленный хост принудительно разорвал существующее подключение". Попробовал отлавливать эксепшн в IOException - все отрабатывает, но больше к среваку приконнектиться не получается (и ловится постоянно эксепшн). Сам я в этих вопросах новичек. Просветите, куда двигаться, пожалуйста. 
PM MAIL   Вверх
sindi8
Дата 30.5.2006, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 6.6.2005
Где: Москва

Репутация: нет
Всего: нет



Повторный коннект получился. В блоке catch закрыл сокет и заново его настроил на прослушивание. 
PM MAIL   Вверх
arilou
Дата 30.5.2006, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 3
Всего: 61



sindi8, ну и наверное счетчик ведешь, сколько раз попытался переконнектиться?  smile  


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
sindi8
Дата 30.5.2006, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 6.6.2005
Где: Москва

Репутация: нет
Всего: нет



Пока не совсем осознал, зачем мне счетчик, но взял на заметку  smile  
PM MAIL   Вверх
arilou
Дата 30.5.2006, 15:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 3
Всего: 61



sindi8, ну чтобы в бесконечный цикл не ушло, если выдернуть сетевой кабель  smile  


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
sindi8
Дата 30.5.2006, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 6.6.2005
Где: Москва

Репутация: нет
Всего: нет



до бесконечных циклов еще не дошел, но странность уже какую-то заполучил (да простят меня модераторы и не сочтут что я задаю второй вопрос в одном топике). Почему-то серверная часть программы не убивается в памяти, если тип проекта Windows Application, и убивается без проблем, если тип Console Application... От чего бы это? 
PM MAIL   Вверх
arilou
Дата 30.5.2006, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 3
Всего: 61



Цитата(sindi8 @  30.5.2006,  17:01 Найти цитируемый пост)
Почему-то серверная часть программы не убивается в памяти

кем не убивается? ты имеешь ввиду "остается в памяти"? Для завершения Windows Application надо Application.Exit вызывать (как альтернативу закрытию основного окна). 


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
sindi8
Дата 1.6.2006, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 6.6.2005
Где: Москва

Репутация: нет
Всего: нет



arilou, именно - остается в памяти. И Application.Exit() почему-то не спасает... Консольное же упорноработает так как надо. Это конечно не смертельно (сейчас для моей задачи), но все-таки просто так висящее консольное окно как-то немного напрягает... 
PM MAIL   Вверх
arilou
Дата 1.6.2006, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 3
Всего: 61



sindi8, есть вероятность что у тебя остался работать какой-то поток. Для потоков, которые должны убиваться вместе с приложением, надо устанавливать св-во IsBackground = true. 


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
sindi8
Дата 1.6.2006, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 6.6.2005
Где: Москва

Репутация: нет
Всего: нет



!!!!!!!!!!! Спасибо! Именно в этом и была проблема! Хорошо когда есть люди с опытом, которые могут помочь))) 
PM MAIL   Вверх
arilou
Дата 3.6.2006, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 3
Всего: 61



sindi8, рад что смог помочь - приходи еще  smile  


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
cully
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, cully, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Распределённые приложения и сеть | Следующая тема »


 




[ Время генерации скрипта: 0.1127 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.