private void 断开SToolStripMenuItem_Click(object sender, EventArgs e) { ScreenViewInfo info = listBoxEstablished.SelectedItem as ScreenViewInfo; if (info == null) { return; } try { listBoxEstablished.Items.Remove(listBoxEstablished.SelectedItem); StreamWriter sw = new StreamWriter(new NetworkStream(info.srcClient.Socket)); sw.WriteLine("tingzhifasong"); sw.Flush(); sw = new StreamWriter(new NetworkStream(info.destClient.Socket)); sw.WriteLine("tingzhijieshou"); sw.Flush(); } catch (Exception e1) { } }
private void establishScreenView(ClientInfo srcClientInfo, ClientInfo destClientInfo, string previewMode) { //断开与即将建立的连接有冲突的 for (int i = listBoxEstablished.Items.Count - 1; i >= 0; i--) { ScreenViewInfo info = listBoxEstablished.Items[i] as ScreenViewInfo; if (info.srcClient.IP == srcClientInfo.IP || info.srcClient.IP == destClientInfo.IP || info.destClient.IP == srcClientInfo.IP || info.destClient.IP == destClientInfo.IP) { try { listBoxEstablished.Items.RemoveAt(i); StreamWriter sw = new StreamWriter(new NetworkStream(info.srcClient.Socket)); sw.WriteLine("tingzhifasong"); sw.Flush(); sw = new StreamWriter(new NetworkStream(info.destClient.Socket)); sw.WriteLine("tingzhijieshou"); sw.Flush(); } catch (Exception e1) { } } } //添加已建立连接列表并发送连接指令 try { ScreenViewInfo svi = new ScreenViewInfo(srcClientInfo, destClientInfo); listBoxEstablished.Items.Add(svi); StreamWriter sw2 = new StreamWriter(new NetworkStream(srcClientInfo.Socket)); sw2.WriteLine("fasong:" + destClientInfo.IP); sw2.Flush(); sw2 = new StreamWriter(new NetworkStream(destClientInfo.Socket)); sw2.WriteLine("jieshou:" + previewMode); sw2.Flush(); } catch (Exception e2) { } }