Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 27.11.2014
Сообщений: 5

Обработка ошибки подключения в программе обмен сообщениями по локальной сети

30.05.2017, 19:43. Показов 2729. Ответов 2

Студворк — интернет-сервис помощи студентам
Добрый день.
Нужна помощь эксперта.
Пишу программу, обмен сообщениями в локальной сети.
Использую подключение Сервер - Клиент.
Помогите с обработкой ошибки.
При запуске клиента без сервера, программа реагирует вот как
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
************** Текст исключения **************
System.Net.Sockets.SocketException (0x80004005): Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение 127.0.0.1:2222
   в System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
   в System.Net.Sockets.Socket.Connect(EndPoint remoteEP)
   в Client.ChatForm.ChatForm_Load(Object sender, EventArgs e) в F:\Курсова\Chat2\Client\Client\ChatForm.cs:строка 76
   в System.Windows.Forms.Form.OnLoad(EventArgs e)
   в MetroFramework.Forms.MetroForm.OnLoad(EventArgs e)
   в System.Windows.Forms.Form.OnCreateControl()
   в System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   в System.Windows.Forms.Control.CreateControl()
   в System.Windows.Forms.Control.WmShowWindow(Message& m)
   в System.Windows.Forms.Control.WndProc(Message& m)
   в System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   в System.Windows.Forms.Form.WmShowWindow(Message& m)
   в System.Windows.Forms.Form.WndProc(Message& m)
   в MetroFramework.Forms.MetroForm.WndProc(Message& m)
   в System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   в System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   в System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
А нужно что бы выдал сообщение типа
сервер не найдет, сервер не отвечает.
Код программы

VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
private void ChatForm_Load(object sender, EventArgs e)
        {
            IPAddress temp = IPAddress.Parse(_host);
            _serverSocket = new Socket(temp.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
            _serverSocket.Connect(new IPEndPoint(temp, _port));
            if (_serverSocket.Connected)
            {
                enterChat.Enabled = true;
                nicknameData.Enabled = true;
                AddMessage("Зв'язок з сервером встановлено.");
                listenThread = new Thread(listner);
                listenThread.IsBackground = true;
                listenThread.Start();
                mIP.Text = ($"Сервер: { _host}");
 
            }
            else
                AddMessage("Зв'язок з сервером не встановлено.");
 
 
        }
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.05.2017, 19:43
Ответы с готовыми решениями:

Обмен сообщениями через протокол Tcp
Приветствую, форумчане! Христос Воскресе!:) Собственно, задание: Напишите программу, которая при...

Обмен файлами и сообщениями через интернет
Мне надо сделать программу, которая будет обмениваться сообщениями с такой-же программой на другом...

Клиент-сервер - не работает обмен сообщениями
Здраствуйте форумчане. Делаю диплом, программа мессенджер. Есть сервер, есть клиент(ниже). Суть...

2
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18304 / 14228 / 5368
Регистрация: 17.03.2014
Сообщений: 28,901
Записей в блоге: 1
31.05.2017, 01:26
Лучший ответ Сообщение было отмечено KSM_14 как решение

Решение

KSM_14, простой try/catch должен помочь
C#
1
2
3
4
5
6
7
8
9
10
try
{
    _serverSocket.Connect(new IPEndPoint(temp, _port));
}
catch (SocketException ex)
{
    // Проверка ex.NativeErrorCode
    MessageBox.Show("Ошибка подключения");
    return;
}
1
0 / 0 / 0
Регистрация: 27.11.2014
Сообщений: 5
31.05.2017, 14:47  [ТС]
OwenGlendower, Спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
31.05.2017, 14:47
Помогаю со студенческими работами здесь

Обмен сообщениями между сокетами
Есть два приложение одно - клиент, второе - сервер. using System; using System.Text; using...

Обмен сообщениями между процессами
Необходимо передать некую информацию из одного процесса (службы) в клиентское приложение,...

Обмен сообщениями между приложением и устройством
Приветствую! Обмен сообщениями будет между приложением и устройством(имеет заводской ip). Где...

Обмен сообщениями между двумя ПК
Подскажите, как можно организовать отправку сообщений между двумя компами. Одно приложение стоит на...

Не идет обмен сообщениями между клиент - сервер
клиент и сервер устанавливают соединение, но сообщения не передаются прошу пожалуйста помочь...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru