private void launchButton_Click(object sender, EventArgs e) { if (aa != null) { aa.dispose(); aa = null; } aa = AutomationFactory.Create(this.factor); if (aa == null) { this.statusContent.Text = Resources.STATUS_CONTENT_FAILED; } else { this.statusContent.Text = Resources.STATUS_CONTENT_CHECKING; this.launchButton.Enabled = false; new Thread(new ThreadStart(() => { try { while (!aa.validate()) { Thread.Sleep(5000); this.BeginInvoke((MethodInvoker) delegate() { this.statusContent.Text = Resources.STATUS_CONTENT_CHECK_FAILED; this.enableScript(false); }); } this.BeginInvoke((MethodInvoker) delegate() { this.statusContent.Text = Resources.STATUS_CONTENT_CHECK_SUCCESS; this.enableScript(true); var a = aa as CCECSHBrowserAutomation; a.getHeader(); // 验证成功后,运行守护线程保证浏览器正常运行 this.sync.Start(); }); } catch (Exception ex) { this.BeginInvoke((MethodInvoker) delegate() { this.statusContent.Text = Resources.STATUS_CONTENT_BROWSER_CLOSE + "\r\n" + ex.Message; this.enableScript(false); this.launchButton.Enabled = true; }); } })).Start(); } }