// ------ инстанцировать менеджер ------- /// <summary> /// Инстанцировать менеджер /// </summary> /// <param name="frm">Форма с которой будет выполняться взаимодействие</param> /// <returns></returns> public static Manager GetManager(IForm frm) { if (manager == null) manager = new Manager(frm); return manager; }
private void Form1_Load(object sender, EventArgs e) { notifyIcon.Icon = Properties.Resources.disconnect; string set_file = "config.xml"; if (System.IO.File.Exists(set_file)) { Settings setts = Settings.Load(set_file); foreach (Parameter parameter in setts.Parameters) { switch (parameter.Name) { case "host": host = parameter.Value; break; case "port": port = Convert.ToInt32(parameter.Value); break; case "autoconnect": autoconnect = Convert.ToBoolean(parameter.Value); break; case "SpeedSurvey": SpeedSurvey = Convert.ToInt32(parameter.Value); break; case "DownTime": DownTime = Convert.ToInt32(parameter.Value); break; case "MaxPacketsCount": MaxPacketsCount = Convert.ToInt32(parameter.Value); break; case "WaitTimeForWorking": WaitTimeForWorking = Convert.ToInt32(parameter.Value); break; } } } else { Settings sett = Settings.CreateNewSettings(); Parameter _host = new Parameter("host"); Parameter _port = new Parameter("port"); Parameter _autoconnect = new Parameter("autoconnect"); Parameter _SpeedSurvey = new Parameter("SpeedSurvey"); Parameter _DownTime = new Parameter("DownTime"); Parameter _MaxPacketsCount = new Parameter("MaxPacketsCount"); Parameter _WaitTimeForWorking = new Parameter("WaitTimeForWorking"); _host.Value = host; _port.Value = port.ToString(); _autoconnect.Value = autoconnect.ToString(); _DownTime.Value = DownTime.ToString(); _SpeedSurvey.Value = SpeedSurvey.ToString(); _MaxPacketsCount.Value = MaxPacketsCount.ToString(); _WaitTimeForWorking.Value = WaitTimeForWorking.ToString(); sett.Insert(_host); sett.Insert(_port); sett.Insert(_autoconnect); sett.Insert(_DownTime); sett.Insert(_SpeedSurvey); sett.Insert(_MaxPacketsCount); sett.Insert(_WaitTimeForWorking); sett.Save(set_file, SaveOptions.CreateNewXml); } // ------- загрузка плагинов ----- m = Manager.GetManager(this); m.DownTime = DownTime; m.MaxPacketsCount = MaxPacketsCount; m.SpeedSurvey = SpeedSurvey; m.WaitTimeForWorking = WaitTimeForWorking; m.PluginUnload += new Message(m_PluginUnload); m.Load(Application.StartupPath); }