//******************************************************************************************** static void ConnectTrd(object state) { SSHForm form = (SSHForm)state; try { Socket stk = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.IP); stk.Connect(form.server.Host, form.server.Port); form.BeginInvoke((MethodInvoker) delegate { form.puttyPanel.Execute(); }); } catch (Exception ex) { try { form.BeginInvoke((MethodInvoker) delegate { form.SetStatusText(ex.Message); form.loadingCircle1.Visible = false; }); } catch { //crap window gone MessageBox.Show(ex.Message); } } }
//************************************************************************************************************* static void ConnectTrd(object state) { SSHForm form = (SSHForm)state; try { // try with socket first, if connection cant be done, no point on trying with putty using (Socket stk = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.IP)) { stk.Connect(form.server.Host, form.server.Port); stk.Close(); } form.BeginInvoke((MethodInvoker) delegate { form.puttyPanel.Open(); }); } catch (Exception ex) { try { form.BeginInvoke((MethodInvoker) delegate { form.SetStatusText(ex.Message); form.loadingCircle1.Visible = false; }); } catch { // Crap window gone? // ok... don't show the message // there is no point since the user closed the tab already // MessageBox.Show(ex.Message); } } }