Example #1
0
 //中止线程
 private void TerminateTask(object sender, Task_Level level)
 {
     if (TaskDoneHandler != null)
     {
         TaskArgs mArgs = new TaskArgs();
         mArgs.level = level;
         TaskDoneHandler(sender, mArgs);
     }
 }
Example #2
0
 private void TaskStatusNotify(object sender, string msg, int value, Task_Level level)
 {
     if (level == Task_Level.TASK_INIT)
     {
         mTaskStatus = Task_Level.TASK_INIT;
         mPcuUpgradeStartTask.InitTask();
         mPcuUpgradeProcessTask.InitTask();
         mPcuUpgradeDoneTask.InitTask();
         mPcuUpgradeRunningTask.InitTask();
         mPcuUpgradeRequestTask.InitTask();
         mPcuEvent.Reset();
         if (mPcuStream != null)
         {
             mPcuStream.Dispose();
             if (mPcuStream != null)
             {
                 mPcuStream.Close();
             }
             else
             {
                 mPcuStream = null;
             }
         }
         mPcuStream      = new FileStream(this.mfilePath, FileMode.Open, FileAccess.Read);
         PCU_FILE_LENGTH = (int)mPcuStream.Length;
     }
     else if (level == Task_Level.TASK_PROGRESS)
     {
         if (pcuProgressBarHandler != null)
         {
             ProgressArgs mArgs = new ProgressArgs();
             mArgs.percentage = value;
             pcuProgressBarHandler(sender, mArgs);
         }
     }
     else if (level == Task_Level.TASK_DONE)
     {
         if (TaskDoneHandler != null)
         {
             TaskArgs mArgs = new TaskArgs();
             mArgs.level = mTaskStatus;
             TaskDoneHandler(sender, mArgs);
         }
     }
 }
Example #3
0
 private void UpdateLviStatus(object sender, string msg, Task_Level level)
 {
     if (level == Task_Level.TASK_PASS)
     {
         mTaskStatus = level;
     }
     if (level == Task_Level.TASK_FAIL)
     {
         mTaskStatus = level;
         this.pcuWorkTask.CancelAsync();
         Thread.Sleep(5);
         mPcuEvent.Set();
     }
     if (PcuLviHandler != null)
     {
         TaskArgs mArgs = new TaskArgs();
         mArgs.msg   = msg;
         mArgs.level = level;
         PcuLviHandler(sender, mArgs);
     }
 }
Example #4
0
        private void UpdatePcuItems(string msg, Task_Level level)
        {
            if (this.listView1.InvokeRequired)//如果调用控件的线程和创建创建控件的线程不是同一个则为True
            {
                while (!this.listView1.IsHandleCreated)
                {
                    //解决窗体关闭时出现“访问已释放句柄“的异常
                    if (this.listView1.Disposing || this.listView1.IsDisposed)
                    {
                        return;
                    }
                }
                UpdatePcuItemsCallback d = new UpdatePcuItemsCallback(UpdatePcuItems);
                this.listView1.Invoke(d, new object[] { msg, level });
            }
            else
            {
                this.listView1.BeginUpdate();
                switch (level)
                {
                case Task_Level.TASK_INIT:
                    this.listView1.AddEmbeddedControl(pcuProgressBar, 2, 0);
                    break;

                case Task_Level.TASK_PROCESS:
                    mPcuItem.SubItems[4].Text      = "";
                    mPcuItem.SubItems[1].ForeColor = Color.Blue;
                    mPcuItem.SubItems[1].Text      = msg;
                    break;

                case Task_Level.TASK_FAIL:
                    this.PcuTestTimeTicker.Enabled  = false;
                    this.toolStripBtn_Stop.Enabled  = false;
                    this.toolStripBtn_Uart.Enabled  = true;
                    this.toolStripBtn_File.Enabled  = true;
                    this.toolStripBtn_Start.Enabled = true;
                    mPcuItem.SubItems[1].ForeColor  = Color.Red;
                    mPcuItem.SubItems[4].ForeColor  = Color.Red;
                    mPcuItem.SubItems[4].Text       = "失败";
                    mPcuItem.SubItems[1].Text       = msg;
                    break;

                case Task_Level.TASK_PASS:
                    this.PcuTestTimeTicker.Enabled = false;
                    //如果CCU 不升级
                    if (!mTaskParam.bCCU)
                    {
                        this.toolStripBtn_Stop.Enabled  = false;
                        this.toolStripBtn_Uart.Enabled  = true;
                        this.toolStripBtn_File.Enabled  = true;
                        this.toolStripBtn_Start.Enabled = true;
                    }
                    else
                    {
                        this.CcuTestTimeTicker.Enabled = true;
                    }
                    mPcuItem.SubItems[4].Text      = "成功";
                    mPcuItem.SubItems[1].ForeColor = Color.Green;
                    mPcuItem.SubItems[4].ForeColor = Color.Green;
                    mPcuItem.SubItems[1].Text      = msg;
                    break;
                }

                this.listView1.EndUpdate();
            }
        }