Example #1
0
 /// <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);
 }
Example #2
0
        /// <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();
        }
Example #3
0
 /// <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;
 }
Example #4
0
        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;
        }
Example #5
0
 /// <summary>
 /// Конструктор
 /// </summary>
 public FrmCommSettings()
 {
     InitializeComponent();
     commSettings = null;
 }
Example #6
0
        /// <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;
        }
Example #7
0
 private void btnCancel_Click(object sender, EventArgs e)
 {
     commSettings = loadedCommSettings.Clone();
     viewSettings = loadedViewSettings.Clone();
     regKey = loadedRegKey;
     SettingsToControls();
     SetSettingsUnchanged();
 }
Example #8
0
        /// <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;
        }
Example #9
0
        /// <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;
            }
        }
Example #10
0
        /// <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;
        }
Example #11
0
        /// <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);
                    }
                }
            }
        }
Example #12
0
 /// <summary>
 /// Конструктор с установкой настроек соединения со SCADA-Сервером и метода записи в журнал работы
 /// </summary>
 public ServerComm(CommSettings commSettings, WriteToLogDelegate writeToLog)
     : this()
 {
     this.commSettings = commSettings;
     this.log = null;
     this.writeToLog = writeToLog;
 }
Example #13
0
 /// <summary>
 /// Конструктор с установкой настроек соединения со SCADA-Сервером и журнала работы
 /// </summary>
 public ServerComm(CommSettings commSettings, Log log)
     : this()
 {
     this.commSettings = commSettings;
     this.log = log;
     this.writeToLog = null;
 }
Example #14
0
 /// <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));
 }