public static void GetServiceName(out NTServiceHostConfig cfg) { ConfigManager <NTServiceHostConfig> configMgt = new ConfigManager <NTServiceHostConfig>(Program.AppConfigFileName); if (configMgt.Load() && configMgt.Config != null) { Console.WriteLine("Load config file succeeded. " + configMgt.FileName); cfg = configMgt.Config; Console.WriteLine("Service name: " + cfg.ServiceName); } else { Console.WriteLine("Load config file failed. " + configMgt.FileName); Console.WriteLine(configMgt.LastErrorInfor); cfg = new NTServiceHostConfig(); cfg.ServiceName = "[NULL]"; cfg.Description = "[Cannot read configuration file of XDS Gateway Application Host]"; } }
private bool SaveSetting() { string sname = this.textBoxServiceName.Text; if (!NTServiceHostConfig.IsValidServiceName(sname)) { MessageBox.Show(this, "NT Service name should only contains charactor or number or '_', and should begins with charactor, and should be not more than 256 characters, please input another name.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Information); this.textBoxServiceName.Focus(); return(false); } if (!CheckDuplicatedService(sname)) { MessageBox.Show(this, "NT Service \"" + sname + "\" has already exsited, please input another name.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Information); this.textBoxServiceName.Focus(); return(false); } Program.ConfigMgt.Config.ServiceName = sname; Program.ConfigMgt.Config.Description = this.textBoxServiceDescription.Text; Program.ConfigMgt.Config.DependOnServiceNameList = this.textBoxDepends.Text.Trim(); Program.ConfigMgt.Config.StartType = (ServiceStartMode)this.comboBoxStart.SelectedItem; Program.ConfigMgt.Config.AccountType = (ServiceAccount)this.comboBoxAccount.SelectedItem; Program.ConfigMgt.Config.UserName = this.textBoxUserName.Text.Trim(); Program.ConfigMgt.Config.Password = this.textBoxPassword.Text; Program.ConfigMgt.Config.LogConfig.LogType = (LogType)this.comboBoxLogType.SelectedItem; Program.ConfigMgt.Config.LogConfig.DurationDay = (int)this.numericUpDownLogDuration.Value; Program.ConfigMgt.Config.LogConfig.HostName = Program.ConfigMgt.Config.ServiceName; Program.ConfigMgt.Config.LogConfig.DumpData = this.checkBoxDumpData.Checked; string installSvcBat = Path.Combine(Application.StartupPath, "InstallService.bat"); string uninstallSvcBat = Path.Combine(Application.StartupPath, "UninstallService.bat"); //string registerSvcBat = Path.Combine(Application.StartupPath, "RegisterHostToSolution.bat"); //string unregisterSvcBat = Path.Combine(Application.StartupPath, "UnregisterHostFromSolution.bat"); string svcCfgExe = Path.Combine(Application.StartupPath, "HYS.IM.Messaging.ServiceConfig.exe"); if (Program.AutoRunBatScript) { //ScriptMgt.ExecuteBatFile(uninstallSvcBat, Application.StartupPath, Program.Log); //ScriptMgt.ExecuteBatFile(svcCfgExe, "-s -u", Application.StartupPath, Program.Log); ScriptMgt.ExecuteAssembly(uninstallSvcBat, "", true, Program.Log); ScriptMgt.ExecuteAssembly(svcCfgExe, "-s -u", true, Program.Log); } if (Program.ConfigMgt.Save()) { if (Program.AutoRunBatScript) { //ScriptMgt.ExecuteBatFile(installSvcBat, Application.StartupPath, Program.Log); //ScriptMgt.ExecuteBatFile(svcCfgExe, "-s -r", Application.StartupPath, Program.Log); ScriptMgt.ExecuteAssembly(installSvcBat, "", true, Program.Log); ScriptMgt.ExecuteAssembly(svcCfgExe, "-s -r", true, Program.Log); } GenerateBat(); return(true); } else { MessageBox.Show(this, "Save configuration file failed." + "\r\n\r\nDetail Information: \r\n\r\n" + Program.ConfigMgt.LastErrorInfor, "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning); return(false); } }