Beispiel #1
0
        public void ReadSocketData(string SocketData)
        {
            if (SocketData == "")
            {
                return;
            }
            int  MacSN   = Convert.ToInt32(SocketData.Substring(10, 2), 16);
            byte MacType = Convert.ToByte(SocketData.Substring(12, 2), 16);

            if (MacType != 1)
            {
                return;
            }
            if (HasWan)
            {
                timer1.Enabled = false;
            }
            string IP                = "";
            int    Port              = 0;
            string MacConnType       = "";
            string MacPhysicsAddress = "";
            byte   IsBigMac          = 0;
            int    LogID             = 0;
            bool   LogIsExists       = true;
            int    logCount          = 0;
            string Version           = "";

            GetMacConnType(MacSN.ToString(), ref IsBigMac, ref MacConnType, ref IP, ref Port, ref MacPhysicsAddress, ref Version);
            if (RealList.IndexOf(SocketData) == -1)
            {
                LogIsExists = false;
                RealList.Add(SocketData);
                while (RealList.Count > maxCount)
                {
                    RealList.RemoveAt(0);
                }
                if (readData.ReadDataReal(SocketData, db, textFormat, MacSN, Version, ref logCount, ref LogID, ShowRealDataProcess))
                {
                    for (int i = 0; i < dataGrid.RowCount; i++)
                    {
                        if (dataGrid[2, i].Value.ToString() == MacSN.ToString())
                        {
                            int DataCount = 0;
                            if (dataGrid[11, i].Value != null)
                            {
                                int.TryParse(dataGrid[11, i].Value.ToString(), out DataCount);
                            }
                            DataCount            += logCount;
                            dataGrid[11, i].Value = DataCount;
                            break;
                        }
                    }
                }
            }
            else
            {
                readData.ReadDataReal(SocketData, db, textFormat, MacSN, Version, ref logCount, ref LogID, null);
            }
            if (!LogIsExists || LogID > 0)
            {
                QHKS.TConnInfo connInfo = new QHKS.TConnInfo();
                connInfo.ConnType   = (byte)(MacConnType == MacConnTypeString.LAN ? 2 : 3);
                connInfo.MacSN      = MacSN;
                connInfo.IsBigMac   = IsBigMac;
                connInfo.MacType    = MacType;
                connInfo.NetHost    = IP;
                connInfo.NetPort    = Port;
                connInfo.MacAddress = MacPhysicsAddress;
                DeviceObject.objKS.Init(ref connInfo);
                DeviceObject.objKS.PubRealOk(LogID);
            }
            if (HasWan)
            {
                timer1.Enabled = true;
            }
            Application.DoEvents();
        }