// using HslCommunication; // using Mesnac.PlcUtils.common; // using Mesnac.PlcUtils.enumInfo; // using Mesnac.PlcUtils.Impl; // using System; // using System.Collections.Generic; // using System.Linq; // using System.Reflection; // using System.Text; // using System.Threading.Tasks; // // namespace Mesnac.PlcUtils // { // public sealed class PlcBusiness // { // // private static readonly Lazy lazy = new Lazy(() => new PlcBusiness()); // public static PlcBusiness Instance // { // get // { // return lazy.Value; // } // } // // private PlcBusiness() { } // // private static IPlc plcInstance = null; // // public void InitPlcConnect(PlcType plcType, string plcAddress, int plcPort) // { // try // { // string str = System.Environment.CurrentDirectory; // str = str + "\\Mesnac.PlcUtils.dll"; // Assembly assembly = Assembly.LoadFile(str); // 加载程序集(EXE 或 DLL) // string AssemName = "Mesnac.PlcUtils.Impl." + plcType.GetDescription(); // var obj = assembly.CreateInstance(AssemName, true); // plcInstance = obj as IPlc; // if (plcInstance == null) // { // ICSharpCode.Core.LoggingService.Error("PLC初始化失败!!!"); // return; // } // else // { // if (!plcInstance.IsConnected) // { // bool connectResult = plcInstance.Connect(plcAddress, plcPort); // if (connectResult) // { // ICSharpCode.Core.LoggingService.Debug("PLC连接成功!!!"); // } // else // { // ICSharpCode.Core.LoggingService.Error("PLC连接失败!!!"); // } // } // } // } // catch (Exception ex) // { // ICSharpCode.Core.LoggingService.Error($"PLC初始化异常:{ex.Message}"); // } // } // // public void Dispose() // { // plcInstance.DisConnect(); // } // // // public OperateResult readBoolValue(string address) // { // if(plcInstance != null) // { // return plcInstance.readBoolByAddress(address); // } // else // { // return new OperateResult() { // IsSuccess = false, // Content = false // }; // } // } // // } // }