Обработка ошибки подключения в программе обмен сообщениями по локальной сети - C#
Формулировка задачи:
Добрый день.
Нужна помощь эксперта.
Пишу программу, обмен сообщениями в локальной сети.
Использую подключение Сервер - Клиент.
Помогите с обработкой ошибки.
При запуске клиента без сервера, программа реагирует вот как
А нужно что бы выдал сообщение типа
сервер не найдет, сервер не отвечает.
Код программы
Листинг программы
- ************** Текст исключения **************
- 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)
Листинг программы
- 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("Зв'язок з сервером не встановлено.");
- }
Решение задачи: «Обработка ошибки подключения в программе обмен сообщениями по локальной сети»
textual
Листинг программы
- try
- {
- _serverSocket.Connect(new IPEndPoint(temp, _port));
- }
- catch (SocketException ex)
- {
- // Проверка ex.NativeErrorCode
- MessageBox.Show("Ошибка подключения");
- return;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д