Exemplo n.º 1
0
        private void StartButton_Click(object sender, EventArgs e)
        {
            AddText("Waiting for connection...");

            SetEnabled(false, ContinueButton);
            SetEnabled(false, StepNextButton);
            SetEnabled(false, BreakButton);
            SetEnabled(false, StartButton);
            SetEnabled(false, StopButton);
            SetEnabled(false, BreakOnStartCheckBox);

            string PipeBoxText = PipeBox.Text;
            string BuildPathBoxText = BuildPathBox.Text;

            Terminating = false;
            BreakOnStart = BreakOnStartCheckBox.Checked;

            new Task(delegate()
            {
                TheDebugger = new Debugger();
                TheDebugger.OnBreak += TheDebugger_OnBreak;
                TheDebugger.OnInvalidCommand += TheDebugger_OnInvalidCommand;
                if (!TheDebugger.Init(PipeBoxText, BuildPathBoxText))
                {
                    AddText("Failed to connect!");
                    SetEnabled(true, StartButton);
                }
                else
                {
                    SetEnabled(true, StopButton);
                    
                    TheDebugger.OnConnected += delegate()
                    {
                        WaitForCommand();
                        TheDebugger.EndInit();

                        if (BreakOnStart)
                        {
                            TheDebugger.BeginBreak();
                            SetEnabled(true, ContinueButton);
                        }
                        else
                        {
                            SetEnabled(true, BreakButton);
                        }

                        AddText("Connected.");
                        WaitForCommand();
                    };

                    //theVM = new VMWare_VM();
                    //theVM.PowerOn();
                }
            }).Start();
        }