/// <summary> /// 设置Recipe /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSetRecipePath_Click(object sender, EventArgs e) { try { using (OpenFileDialog dialog = new OpenFileDialog()) { if (!string.IsNullOrWhiteSpace(this.txtSetRecipeFile.Text)) { string fileDir = Path.GetDirectoryName(this.txtSetRecipeFile.Text); if (Directory.Exists(fileDir)) { dialog.InitialDirectory = fileDir; dialog.FileName = Path.GetFileName(this.txtSetRecipeFile.Text); } } dialog.Title = "Select recipe file."; dialog.Filter = string.Format("{0} file(*.{0})|*.{0}", "bin"); dialog.FileName = Path.GetFileName(this.txtSetRecipeFile.Text); if (dialog.ShowDialog() != DialogResult.OK) { return; } this.txtSetRecipeFile.Text = dialog.FileName; if (MessageBox.Show("确定设置Recipe吗?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) { var tasks = new List <Task>(); foreach (var iixServer in Global.ListIIXSerevr) { if (iixServer.IsEnable == false) { continue; } tasks.Add(Task.Factory.StartNew(() => { IIXExecute.SetRecipe(iixServer, dialog.FileName); })); } Task.WaitAll(tasks.ToArray()); } } } catch (Exception ex) { Log.GetInstance().ErrorWrite("系统错误,请查询日志文件检查。"); Log.WriterExceptionLog(ex.ToString()); } }
/// <summary> /// 加载当前项目信息 /// </summary> private bool LoadProduct() { try { if (MoveExecute.LoadSettings(Global.ProductName)) { Log.GetInstance().NormalWrite("加载项目配置文件配置成功。"); } else { Log.GetInstance().ErrorWrite("加载项目配置文件配置失败。"); return(false); } var currentProductPath = Path.Combine(Application.StartupPath + "\\Product", Global.ProductName); var fileName = Global.IsExistFileBySuffixName(currentProductPath, ".bin"); if (fileName == "") { Log.GetInstance().ErrorWrite(string.Format("目录 '{0}' 下没有找到该项目的bin文件,切换项目失败。", currentProductPath)); return(false); } /// ///设置Recipe /// var tasks = new List <Task>(); CmdResultCode cmdRes; bool f = false; foreach (var iixServer in Global.ListIIXSerevr) { if (iixServer.IsEnable == false) { continue; } tasks.Add(Task.Factory.StartNew(() => { cmdRes = IIXExecute.SetRecipe(iixServer, Path.Combine(currentProductPath, fileName)); if (cmdRes != CmdResultCode.Success) { f = false; } })); } Task.WaitAll(tasks.ToArray()); if (!f) { Log.GetInstance().ErrorWrite(string.Format("设置Recipe失败,请重启软件。")); return(false); } //修改配置文件中当前项目名 IniFile.IniWriteValue("Product", "ProductName", Global.ProductName, Global.ConfigPath); //修改主界面项目名 return(true); } catch (Exception ex) { Log.GetInstance().ErrorWrite("系统错误,请查询日志文件检查。"); Log.WriterExceptionLog(ex.ToString()); return(false); } }