public void Start(out string errMsg) { errMsg = ""; if (IsRuning) { return; } try { // Scada-OPC通信服务 if (opcScadaService != null) { opcScadaService.Stop(); } opcScadaService = new OPCScadaService(Config.projectConfigPath); opcScadaService.Start(out errMsg); if (opcScadaService.IsRuning) { TraceManagerForOPC.AppendDebug("Scada-OPC通信服务已经打开"); } else { errMsg = "Scada-OPC通信服务打开失败"; Stop(); return; } } catch (Exception e) { errMsg = e.Message; Stop(); return; } IsRuning = true; }