/// <summary> /// Определить, являются ли заданные параметры связи идентичными текущим параметрам /// </summary> public bool Equals(CommSettings commSettings) { return(commSettings == null ? false : ServerHost == commSettings.ServerHost && ServerPort == commSettings.ServerPort && ServerUser == commSettings.ServerUser && ServerPwd == commSettings.ServerPwd && ServerTimeout == commSettings.ServerTimeout); }
/// <summary> /// Отобразить форму настроек соединения /// </summary> public static DialogResult Show(CommSettings commSettings) { if (commSettings == null) throw new ArgumentNullException("commSettings"); FrmCommSettings frmCommSettings = new FrmCommSettings(); frmCommSettings.commSettings = commSettings; frmCommSettings.txtServerHost.Text = commSettings.ServerHost; frmCommSettings.numServerPort.SetNumericValue(commSettings.ServerPort); frmCommSettings.numServerTimeout.SetNumericValue(commSettings.ServerTimeout); frmCommSettings.txtServerUser.Text = commSettings.ServerUser; frmCommSettings.txtServerPwd.Text = commSettings.ServerPwd; return frmCommSettings.ShowDialog(); }
/// <summary> /// Определить, являются ли заданные параметры связи идентичными текущим параметрам /// </summary> public bool Equals(CommSettings commSettings) { return commSettings == null ? false : ServerHost == commSettings.ServerHost && ServerPort == commSettings.ServerPort && ServerUser == commSettings.ServerUser && ServerPwd == commSettings.ServerPwd && ServerTimeout == commSettings.ServerTimeout; }
private ServiceController svcContr; // контроллер службы #endregion Fields #region Constructors /// <summary> /// Конструктор /// </summary> public FrmMain() { InitializeComponent(); // установка формата дат и времени элементов управления dtpSrezDate.CustomFormat = dtpEvDate1.CustomFormat = dtpEvDate2.CustomFormat = Localization.Culture.DateTimeFormat.ShortDatePattern; dtpSrezTime.CustomFormat = dtpEvTime.CustomFormat = Localization.Culture.DateTimeFormat.LongTimePattern; // инициализация полей exeDir = ""; configDir = ""; langDir = ""; logDir = ""; modDir = ""; errLog = new Log(Log.Formats.Simple); errLog.Encoding = Encoding.UTF8; mutex = null; svcContr = null; prevSvcStatus = ServiceControllerStatus.Stopped; notifyIcons = new Icon[ilNotify.Images.Count]; for (int i = 0; i < notifyIcons.Length; i++) notifyIcons[i] = Icon.FromHandle(((Bitmap)ilNotify.Images[i]).GetHicon()); notifyIconIndex = 0; stateFileName = ""; logFileName = ""; stateFileAge = DateTime.MinValue; logFileAge = DateTime.MinValue; nodeCommonParams = treeView.Nodes["nodeCommonParams"]; nodeSaveParams = treeView.Nodes["nodeSaveParams"]; nodeDirectories = treeView.Nodes["nodeDirectories"]; nodeFiles = treeView.Nodes["nodeFiles"]; nodeBase = nodeFiles.Nodes["nodeBase"]; nodeCurSrez = nodeFiles.Nodes["nodeCurSrez"]; nodeMinSrez = nodeFiles.Nodes["nodeMinSrez"]; nodeHrSrez = nodeFiles.Nodes["nodeHrSrez"]; nodeEvents = nodeFiles.Nodes["nodeEvents"]; nodeModules = treeView.Nodes["nodeModules"]; nodeGenerator = treeView.Nodes["nodeGenerator"]; nodeStats = treeView.Nodes["nodeStats"]; lastNode = null; settings = new Settings(); commSettings = new CommSettings(); serverComm = null; changing = false; modViewDict = new Dictionary<string, ModView>(); lastModView = null; }
/// <summary> /// Конструктор /// </summary> public FrmCommSettings() { InitializeComponent(); commSettings = null; }
/// <summary> /// Конструктор /// </summary> public FrmMain() { InitializeComponent(); exeDir = ""; configDir = ""; webAppDir = ""; commSettings = new CommSettings(); webSettings = new WebSettings(); viewSettings = new ViewSettings(); regKey = ""; loadedCommSettings = null; loadedWebSettings = null; loadedViewSettings = null; loadedRegKey = ""; commSettingsChanged = false; webSettingsChanged = false; viewSettingsChanged = false; regKeyChanged = false; showing = false; selViewSet = null; selViewInfo = null; }
private void btnCancel_Click(object sender, EventArgs e) { commSettings = loadedCommSettings.Clone(); viewSettings = loadedViewSettings.Clone(); regKey = loadedRegKey; SettingsToControls(); SetSettingsUnchanged(); }
/// <summary> /// Загрузить настройки из файлов /// </summary> private void LoadSettings() { StringBuilder sbErr = new StringBuilder(); string errMsg; SetSettingsUnchanged(); // загрузка настроек соединения if (!commSettings.LoadFromFile(configDir + CommSettings.DefFileName, out errMsg)) sbErr.AppendLine(errMsg); // загрузка настроек отображения if (!webSettings.LoadFromFile(configDir + WebSettings.DefFileName, out errMsg)) sbErr.AppendLine(errMsg); // загрузка настроек представлений if (!viewSettings.LoadFromFile(configDir + ViewSettings.DefFileName, out errMsg)) sbErr.AppendLine(errMsg); // отображение настроек SettingsToControls(); if (sbErr.Length > 0) ScadaUtils.ShowError(sbErr.ToString().TrimEnd()); loadedCommSettings = commSettings.Clone(); loadedWebSettings = webSettings.Clone(); loadedViewSettings = viewSettings.Clone(); loadedRegKey = regKey; }
/// <summary> /// Сохранить настройки в файлах /// </summary> private void SaveSettings() { StringBuilder sbErr = new StringBuilder(); string errMsg; // сохранение настроек доступа к данным if (commSettingsChanged && !commSettings.SaveToFile(configDir + CommSettings.DefFileName, out errMsg)) sbErr.AppendLine(errMsg); // сохранение настроек отображения if (webSettingsChanged && !webSettings.SaveToFile(configDir + WebSettings.DefFileName, out errMsg)) sbErr.AppendLine(errMsg); // сохранение настроек представлений if (viewSettingsChanged && !viewSettings.SaveToFile(configDir + ViewSettings.DefFileName, out errMsg)) sbErr.AppendLine(errMsg); if (sbErr.Length > 0) { ScadaUtils.ShowError(sbErr.ToString().TrimEnd()); } else { SetSettingsUnchanged(); loadedCommSettings = commSettings.Clone(); loadedWebSettings = webSettings.Clone(); loadedViewSettings = viewSettings.Clone(); loadedRegKey = regKey; } }
/// <summary> /// Принять таблицы базы конфигурации от SCADA-Сервера /// </summary> private bool ReceiveBaseTables(out string errMsg) { CommSettings commSettings = new CommSettings(origSettings.Params.ServerHost, origSettings.Params.ServerPort, origSettings.Params.ServerUser, origSettings.Params.ServerPwd, origSettings.Params.ServerTimeout); if (serverComm == null || !serverComm.CommSettings.Equals(commSettings)) serverComm = new ServerComm(commSettings, (Log)null); if (serverComm.ReceiveBaseTable("commline.dat", tblCommLine) && serverComm.ReceiveBaseTable("kp.dat", tblKP) && serverComm.ReceiveBaseTable("kptype.dat", tblKPType)) { errMsg = ""; baseTablesReceived = true; } else { errMsg = serverComm.ErrMsg; if (errMsg == "") errMsg = AppPhrases.ReceiveBaseTableError; if (errMsg.Length > 0 && !errMsg.EndsWith(".")) errMsg += "."; baseTablesReceived = false; } return baseTablesReceived; }
/// <summary> /// �������� (�����������) ������ ��� ������ ������� �� SCADA-�������� /// ��� ��������� ����� �������� ���������� �� SCADA-�������� /// </summary> private void RefrServerComm() { if (settFileName != "") { DateTime dateTime = GetLastWriteTime(settFileName); if (dateTime > DateTime.MinValue && dateTime != settModTime) { settModTime = dateTime; CommSettings commSettings = new CommSettings(); commSettings.LoadFromFile(settFileName, AppData.Log); if (serverComm == null || !serverComm.CommSettings.Equals(commSettings)) { if (serverComm != null) { serverComm.Close(); tblCur = new SrezTableLight(); for (int i = 0; i < HourCacheSize; i++) hourTableCache[i] = null; for (int i = 0; i < EventCacheSize; i++) eventTableCache[i] = null; hourTableIndex = 0; eventTableIndex = 0; trend = null; baseModTime = DateTime.MinValue; baseFillTime = DateTime.MinValue; } serverComm = new ServerComm(commSettings); } } } }
/// <summary> /// Конструктор с установкой настроек соединения со SCADA-Сервером и метода записи в журнал работы /// </summary> public ServerComm(CommSettings commSettings, WriteToLogDelegate writeToLog) : this() { this.commSettings = commSettings; this.log = null; this.writeToLog = writeToLog; }
/// <summary> /// Конструктор с установкой настроек соединения со SCADA-Сервером и журнала работы /// </summary> public ServerComm(CommSettings commSettings, Log log) : this() { this.commSettings = commSettings; this.log = log; this.writeToLog = null; }
/// <summary> /// Determine whether the specified settings are equal to the current settings /// </summary> public bool Equals(CommSettings commSettings) { return(commSettings != null && (commSettings == this || ServerHost == commSettings.ServerHost && ServerPort == commSettings.ServerPort && ServerUser == commSettings.ServerUser && ServerPwd == commSettings.ServerPwd && ServerTimeout == commSettings.ServerTimeout)); }