//private void DoAutoLogin() //{ // Framework.Container.Instance.EvtAggregator.GetEvent<AnalyseMessageEvent>().Publish(new Tuple<uint, string>(11, "开始自动连接服务器请等待....")); // System.Threading.Thread.Sleep(5000); // lock (this) // { // while (true) // { // DataModel.ConnectionParam ip = Framework.Environment.IPList.GetNext(); // if (ip == null) // { // Framework.Container.Instance.EvtAggregator.GetEvent<AnalyseMessageEvent>().Publish(new Tuple<uint, string>(11, "无可用服务器资源.")); // break; // } // int ret = AutoLogin(ip); // if (ret == 1 || ret == 2) // break; // else // System.Threading.Thread.Sleep(5000); // } // } //} ///// <summary> ///// modify by shenbin 20160217,change return bool to int ///// </summary> ///// <param name="connparam">1 ok,2 server in use, 3 anlyse error ,4 other error</param> ///// <returns></returns> //private int AutoLogin(DataModel.ConnectionParam connparam) //{ // //if (InvokeRequired) // //{ // // return Convert.ToBoolean(this.Invoke(new Func<DataModel.ConnectionParam, bool>(AutoLogin),connparam)); // //} // //else // { // int ret = 0; // Assembly asm = Assembly.GetExecutingAssembly(); // //string configFile = Path.Combine(Directory.GetParent(asm.Location).FullName, "OCXLogin.xml"); // //if (System.IO.File.Exists(configFile)) // { // /* // <Login> // <IP>192.168.42.209</IP> // <Port>8002</Port> // <LocalPort>4096</LocalPort> // <User>root</User> // <Pass>123456</Pass> // </Login> // */ // try // { // //XmlDocument doc = new XmlDocument(); // //doc.Load(configFile); // //string ip = doc.SelectSingleNode("//IP").InnerText; // //uint port = Convert.ToUInt32(doc.SelectSingleNode("//Port").InnerText); // //uint localport = Convert.ToUInt32(doc.SelectSingleNode("//LocalPort").InnerText); // //string user = doc.SelectSingleNode("//User").InnerText; // //string pass = doc.SelectSingleNode("//Pass").InnerText; // string ip = connparam.IPAddress; // uint port = (uint)connparam.Port; // //uint localport = (uint)connparam.LocalServerPort; // string user = connparam.DeviceNo; // string pass = connparam.DeviceNo; // ViewModels.LoginViewModel vm = new ViewModels.LoginViewModel(); // vm.ServerIP = ip; // vm.ServerPort = port; // //vm.LocalPort = localport; // vm.UserName = user; // vm.Password = pass; // vm.RememberPassword = false; // vm.CustomPortSettings = true; // Framework.Container.Instance.TaskManager.Init(); // if (vm.Commit()) // { // System.Threading.Thread.Sleep(1000); // if (!Framework.Container.Instance.TaskManager.Initialized) // return 2; // if (Framework.Environment.LoggedinToken != null) // { // SetButtonEnable(btnLogin, false); // //barStatusLogin.Caption = string.Format("登录服务器: {0}", Framework.Environment.LoggedinToken.ServerIP); // //barStatusAnalyse.Caption = string.Format(""); // if (Framework.Environment.ManualRevise && File.Exists(Framework.Environment.ManualReviseFile)) // { // Framework.Container.Instance.TaskManager.Revisor = new AnalyseResultReviseFromTxtFile(Framework.Environment.ManualReviseFile); // Framework.Container.Instance.TaskManager.Revisor.ReviseByFile = Framework.Environment.ManualReviseByFile; // } // Framework.Container.Instance.EvtAggregator.GetEvent<UserLoginEvent>().Publish(Framework.Environment.LoggedinToken); // } // //if (!Framework.Container.Instance.ImageAnalysisService.Running) // //{ // // if (Framework.Container.Instance.ImageAnalysisService.Start()) // // { // // Framework.Container.Instance.TaskManager.Connected = true; // // Framework.Container.Instance.TaskManager.Running = true; // // } // // else // // { // // Framework.Container.Instance.InteractionService.ShowMessageBox("开始分析失败", // // Framework.Environment.PROGRAM_NAME, // // MessageBoxButtons.OK, MessageBoxIcon.Warning); // // Framework.Container.Instance.EvtAggregator.GetEvent<AnalyseMessageEvent>().Publish(new Tuple<uint, string>(11, "开始分析失败")); // // return 3; // // } // //} // //else // //{ // // Framework.Container.Instance.TaskManager.Running = true; // //} // Framework.Container.Instance.EvtAggregator.GetEvent<AnalyseMessageEvent>().Publish(new Tuple<uint, string>(11, "开始分析 ...")); // ret = 1; // } // } // catch // { // return 4; // } // } // return ret; // } //} private void SetButtonEnable(SimpleButton bt, bool enable) { if (bt.InvokeRequired) { bt.Invoke(new Action <SimpleButton, bool>(SetButtonEnable), bt, enable); } else { bt.Enabled = enable; } }