Exemplo n.º 1
0
        /// <summary>
        /// 建立更新控制端
        /// </summary>
        /// <param name="code"></param>
        private void builtUpdateControler(BaseCommunication sender, Code code)
        {
            BaseControler controler = sender as BaseControler;

            if (controler != null)
            {
                PortCode readyCode = code as PortCode;
                if (readyCode != null)
                {
                    if (serverupdateControler == null)
                    {
                        serverupdateControler = new FileControler(controler.ServerAddress, readyCode.Port);
                    }
                    if (serverupdateControler != null)
                    {
                        serverupdateControler.CloseConnections();
                        Thread.Sleep(500);
                        serverupdateControler                 = new FileControler(controler.ServerAddress, readyCode.Port);
                        serverupdateControler.SourceFile      = updatedFile;
                        serverupdateControler.DestinationFile = ICanSeeYou.Common.IO.GetName(updatedFile);
                        serverupdateControler.IsDownload      = false;//上传更新文件
                        serverupdateControler.Open();
                    }
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>
        ///如果升级程序存在,则启动升级程序,否则告诉控制端更新失败
        /// </summary>
        private void builtUpdateServer()
        {
            string path = Directory.GetCurrentDirectory() + "\\Update.exe";

            //如果Update程序已经启动,先关闭它.
            ServerUpdater.CloseApplication("update");
            if (!File.Exists(path))
            {
                BaseCode code = new BaseCode();
                code.Head = CodeHead.UPDATE_FAIL;
                mainServer.SendCode(code);
            }
            else
            {
                Thread.Sleep(300);
                //启动Update程序
                Thread updateThread = new Thread(new ThreadStart(runUpdateApp));
                updateThread.Start();
                //告诉控制端Update程序已经启动.
                Thread.Sleep(100);
                PortCode code = new PortCode();
                code.Head = CodeHead.UPDATE_READY;
                code.Port = Constant.Port_Update;
                mainServer.SendCode(code);
            }
        }
Exemplo n.º 3
0
        /// <summary>
        ///如果升级程序存在,则启动升级程序,否则告诉控制端更新失败
        /// </summary>
        private void builtUpdateServer()
        {
            string path = Directory.GetCurrentDirectory() + "\\Update.exe";

            // string path = @"D:\My Documents\Visual Studio 2005\Projects\程序设计大赛\ICANSEEYOU\Update\bin\Debug\Update.exe";
            //如果Update程序已经启动,先关闭它.
            ServerUpdater.CloseApplication("update");
            if (!File.Exists(path))
            {
                BaseCode code = new BaseCode();
                code.Head = CodeHead.UPDATE_FAIL;
                mainChick.SendCode(code);
            }
            else
            {
                Thread.Sleep(300);
                //启动Update程序
                Thread updateThread = new Thread(new ThreadStart(runUpdateApp));
                updateThread.Start();
                //告诉控制端Update程序已经启动.
                Thread.Sleep(100);
                PortCode code = new PortCode();
                code.Head = CodeHead.UPDATE_READY;
                code.Port = Constant.Port_Update;
                mainChick.SendCode(code);
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// 所有服务端已经准备好(发送它们打开的端口到控制端)
        /// </summary>
        private void sendReady()
        {
            PortCode readyCode = new PortCode();

            readyCode.Head = CodeHead.SEND_FILE_READY;
            readyCode.Port = Constant.Port_File;
            mainServer.SendCode(readyCode);

            readyCode.Head = CodeHead.SCREEN_READY;
            readyCode.Port = Constant.Port_Screen;
            mainServer.SendCode(readyCode);
        }
Exemplo n.º 5
0
        /// <summary>
        /// 建立文件控制端
        /// </summary>
        /// <param name="code"></param>
        private void builtFileControler(BaseCommunication sender, Code code)
        {
            BaseControler controler = sender as BaseControler;

            if (controler != null)
            {
                PortCode readyCode = code as PortCode;
                if (readyCode != null)
                {
                    if (fileControler != null)
                    {
                        fileControler.CloseConnections();
                    }
                    fileControler         = new FileControler(controler.ServerAddress, readyCode.Port);
                    fileControler.Refrush = new RefrushEvent(UpdateExplorerView);
                }
            }
        }
Exemplo n.º 6
0
        /// <summary>
        /// 建立屏幕接收端
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="code"></param>
        private void builtScreenControler(BaseCommunication sender, Code code)
        {
            BaseControler controler = sender as BaseControler;

            if (controler != null)
            {
                PortCode readyCode = code as PortCode;
                if (readyCode != null)
                {
                    if (screenControler != null)
                    {
                        screenControler.CloseConnections();
                    }
                    screenControler             = new ScreenControler(controler.ServerAddress, readyCode.Port);
                    screenControler.pic_Screen  = pic_Screen;
                    screenControler.lbl_Message = lbl_Message;
                }
            }
        }
Exemplo n.º 7
0
        /// <summary>
        /// ���з�����Ѿ�׼����(�������Ǵ򿪵Ķ˿ڵ����ƶ�)
        /// </summary>
        private void sendReady()
        {
            PortCode readyCode = new PortCode();
            readyCode.Head = CodeHead.SEND_FILE_READY;
            readyCode.Port = Constant.Port_File;
            mainChick.SendCode(readyCode);

            readyCode.Head = CodeHead.SCREEN_READY;
            readyCode.Port = Constant.Port_Screen;
            mainChick.SendCode(readyCode);
        }
Exemplo n.º 8
0
 /// <summary>
 ///��������������,�������������,������߿��ƶ˸���ʧ��
 /// </summary>
 private void builtUpdateServer()
 {
     string path = Directory.GetCurrentDirectory() + "\\Update.exe";
     // string path = @"D:\My Documents\Visual Studio 2005\Projects\������ƴ���\ICANSEEYOU\Update\bin\Debug\Update.exe";
     //���Update�����Ѿ����,�ȹر���.
     ServerUpdater.CloseApplication("update");
     if (!File.Exists(path))
     {
         BaseCode code = new BaseCode();
         code.Head = CodeHead.UPDATE_FAIL;
         mainChick.SendCode(code);
     }
     else
     {
         Thread.Sleep(300);
         //���Update����
         Thread updateThread = new Thread(new ThreadStart(runUpdateApp));
         updateThread.Start();
         //���߿��ƶ�Update�����Ѿ����.
         Thread.Sleep(100);
         PortCode code = new PortCode();
         code.Head = CodeHead.UPDATE_READY;
         code.Port = Constant.Port_Update;
         mainChick.SendCode(code);
     }
 }