public bool OnInit() { _log.NormalLog(string.Format("ModbusTCPClientHanderTask:Init=>Initing ")); try { //获取配置 _config = ReaderXMLUtil.ReadXMLConfig <ModbusTCPClientConfig>("../../../../conf/Configuration.xml", ModbusTCPClientConfig.ReadConfig, "setup", "ModbusTCPClientHandlerTask")[0]; if (_config.IpAddress == "" || _config.SignalListFilePath == "") { _log.ErrorLog(string.Format("ModbusTCPClientHanderTask Init fail:{0}", "IP address or Signal file path is null!")); return(false); } _setup = new EthernetSetUp(_config.IpAddress, _config.Port); _timeout = new TimeOut("ModbusTCPClientHanderTask", _config.TimeOut, _log); _timeRead = new Timer.Timer(_config.PollingTime); _client = new ModbusTCPClient(_setup, _timeout, _log); //获取点数据 _workbook = XmlSerialiaztion.XmlDeserial <XMLWorkbook>(_config.SignalListFilePath, _log); _points = PointsCollcetCreate.Create(_workbook, _log); //点数据注册 PointsRegister.Register(ref _points, _log); _log.NormalLog(string.Format("ModbusTCPClientHanderTask:Initing=>Inited ")); return(true); } catch (Exception e) { _log.ErrorLog(string.Format("ModbusTCPClientHanderTask Init fail:{0}", e.Message)); return(false); } }
public virtual bool BuildPoints() { if (_baseconfig.SignalListFilePath == "") { _log.ErrorLog("BuildPoints:Points List data read Error,Path is null!!"); return(false); } var workBook = XmlSerialiaztion.XmlDeserial <XMLWorkbook>(_baseconfig.SignalListFilePath, _log); if (workBook == null) { _log.ErrorLog("BuildPoints:Points List data read Error!!"); return(false); } var pointsFactory = new PointsCollcetFactory(workBook, _log); var points = pointsFactory.CreatePoints(_clientName); PointsRegister.Register(ref points, _log); _clientTask.Points = points; return(true); }