예제 #1
0
        /// <summary>
        /// 更新
        /// </summary>
        public static void Upadte()
        {
            soft_update.frm.title = "正在检测更新";

            Thread t = new Thread(() =>
            {
                try
                {
                    IvyHelper.F_0001_0010();

                    Thread.Sleep(500);

                    int ser_ver     = Conv.ToInt(soft_update.upbll.GetServerVer().Split('_')[1]);
                    int ord_ser_ver = Conv.ToInt(GlobalData.ser_var.Split('_')[1]);



                    if (ser_ver < ord_ser_ver)
                    {
                        soft_update.frm.title = "正在更新服务器";
                        //服务器版本 比标记版本低 需要更新
                        soft_update.upbll.Update();

                        int i = 1;
                        while (true)
                        {
                            Thread.Sleep(2000);//每隔2秒验证一次...............

                            i++;
                            if (soft_update.upbll.UpdateState())
                            {
                                break;
                            }

                            if (i > 20)
                            {
                                MsgForm.ShowFrom("更新失败!");
                                System.Environment.Exit(0);
                            }
                        }
                    }
                    else if (ser_ver > ord_ser_ver)
                    {
                        //服务器版本 比标记版本高 程序版本较低
                        throw new Exception("程序版本较低,请更新程序!");
                    }
                    soft_update.frm.Invoke((MethodInvoker) delegate
                    {
                        soft_update.frm.Close();
                    });
                }
                catch (Exception ex)
                {
                    MsgForm.ShowFrom(ex);
                }
            });

            t.Start();
            soft_update.frm.ShowDialog();
        }
예제 #2
0
 /// <summary>
 /// 验证软件
 /// </summary>
 public static int VerifySoft()
 {
     try
     {
         return(IvyHelper.Exists());
     }
     catch (Exception ex)
     {
         LogHelper.writeLog(ex);
         throw;
     }
 }