/// <summary> /// 开始运行脚本 /// </summary> private void StartGame() { if (m_process != null) { m_process.Close(); m_process.Kill(); m_process = null; } m_process = Process.Start(new ProcessStartInfo { UseShellExecute = false, FileName = m_programPath }); var result = Login(); if (!result) { // 启动失败,等待重启 State = RunningState.Stopped; return; } // 设置开始时间 StartTime = DateTime.Now; // 获取新窗口句柄 m_dmsoft = DMFactory.Instance.CreateDMSoft(); while (true) { var handle = m_dmsoft.EnumWindowByProcessId(m_process.Id, "", "MacromediaFlashPlayerActiveX", 2); WxLog.Debug($"AppEntity.StartGame Handl <{handle}>"); var hs = handle.Split(','); foreach (var h in hs) { try { var it = int.Parse(h); m_dmsoft.BindWindow(it, "gdi", "windows", "windows", 101); var title = m_dmsoft.GetWindowClass(it); WxLog.Debug($"AppEntity.StartGame {title}"); } catch { } } Thread.Sleep(10000); } }