Exemple #1
0
 private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
 {
     if (e.CloseReason == CloseReason.UserClosing)
     {
         if (this.ScreenBroadcastToolStripMenuItem.Text == "关闭广播")
         {
             DialogResult r = MessageBox.Show("屏幕广播尚未关闭,确定要退出程序?", "操作提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
             if (r != DialogResult.OK)
             {
                 e.Cancel = true;
             }
             else
             {
                 if (rtspAddress != null)
                 {
                     si.stopScreenInteract();
                 }
                 if (clientConnect != null)
                 {
                     clientConnect.ServiceClose();//用户退出程序时,释放连接
                     clientConnect = null;
                 }
                 System.Environment.Exit(0);
             }
         }
         else
         {
             DialogResult r = MessageBox.Show("确定要退出程序?", "操作提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
             if (r != DialogResult.OK)
             {
                 e.Cancel = true;
             }
             else
             {
                 if (clientConnect != null)
                 {
                     clientConnect.ServiceClose();//用户退出程序时,释放连接
                     clientConnect = null;
                 }
                 System.Environment.Exit(0);
             }
         }
     }
 }
Exemple #2
0
        bool flag = true;  //ReceiveMeg函数开始标记



        public MainForm()
        {
            InitializeComponent();
            messageCallback                    = new messageListCallback(setMessage); //绑定信息提示事件函数
            userCallback                      += userListShow;                        //z这边写出函数名以后,可以自动生成相应的函数(函数参数与相应的委托声明相同)
            userOfflineCallback               += userOffline;
            clientConnect                      = new ClientConnectTcp();
            clientConnect.ServerConnected     += clientConnect_ServerConnected;
            clientConnect.ServerConnectFailed += clientConnect_ServerConnectFailed;
            clientConnect.MessageReceived     += clientConnect_MessageReceived;
            clientConnect.ServerLost          += clientConnect_ServerLost;
            imgList = this.imageList1;
            // 本机节点
            ipEndPoint = new IPEndPoint(IPAddress.Any, listenPort);
            // 远程节点
            //remoteEP = new IPEndPoint(IPAddress.Parse("172.26.162.212"), remotePort);
            // 实例化
            udpReceive = new UdpClient(ipEndPoint);
            // 实例化udpReceiveState
            udpReceiveState            = new UdpState();
            udpReceiveState.udpClient  = udpReceive;
            udpReceiveState.ipEndPoint = ipEndPoint;
        }