Обработка ошибки подключения в программе обмен сообщениями по локальной сети - 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; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д