public override void Init(Dictionary <string, string> InitBuff) { if (InitBuff.ContainsKey("Text")) { this.Text = InitBuff["Text"]; } if (!InitBuff.ContainsKey("LocalPort")) { All.Class.Error.Add(string.Format("初始化UDP失败,初始化字符串不包括本地监听端口,设备名称:{0}", this.Text), Environment.StackTrace); return; } int localPort = Class.Num.ToInt(InitBuff["LocalPort"]); udpClient = new Class.Udp(localPort); if (InitBuff.ContainsKey("RemotHost")) { udpClient.RemotHost = InitBuff["RemotHost"]; } if (InitBuff.ContainsKey("RemotPort")) { udpClient.RemotPort = Class.Num.ToInt(InitBuff["RemotPort"]); } if (InitBuff.ContainsKey("FlushTick")) { this.FlushTick = Class.Num.ToInt(InitBuff["FlushTick"]); } }
public override void Init(Dictionary <string, string> initParm) { this.InitParm = initParm; if (initParm.ContainsKey("Text")) { this.Text = initParm["Text"]; } if (initParm.ContainsKey("TimeOut")) { this.TimeOut = All.Class.Num.ToInt(initParm["TimeOut"]); } if (initParm.ContainsKey("ErrorCount")) { this.ErrorCount = All.Class.Num.ToInt(initParm["ErrorCount"]); } if (this.Parent.Sons.Count > 1) { All.Class.Error.Add("信息交互通讯类,此设备必须独占一个通讯方式,父通讯类下只能存在一个子设备", Environment.StackTrace); return; } if (initParm.ContainsKey("byte")) { readByte = new byte[All.Class.Num.ToInt(initParm["byte"])]; readByte.Initialize(); } if (initParm.ContainsKey("string")) { readString = new string[All.Class.Num.ToInt(initParm["string"])]; for (int i = 0; i < readString.Length; i++) { readString[i] = ""; } } if (initParm.ContainsKey("double")) { readDouble = new double[All.Class.Num.ToInt(initParm["double"])]; readDouble.Initialize(); } if (initParm.ContainsKey("int")) { readInt = new int[All.Class.Num.ToInt(initParm["int"])]; readInt.Initialize(); } if (initParm.ContainsKey("ushort")) { readUshort = new ushort[All.Class.Num.ToInt(initParm["ushort"])]; readUshort.Initialize(); } if (initParm.ContainsKey("float")) { readFloat = new float[All.Class.Num.ToInt(initParm["float"])]; readFloat.Initialize(); } if (initParm.ContainsKey("bool")) { readBool = new bool[All.Class.Num.ToInt(initParm["bool"])]; readBool.Initialize(); } if (this.Parent is All.Communite.Udp) { } else { All.Class.Error.Add("SSRead当前只支持UDP通讯,请更改通讯类为UDP类"); return; } udp = (this.Parent as All.Communite.Udp).UdpClient; udp.GetBytesArgs += udp_GetBytesArgs; }