示例#1
0
        /// <summary>
        /// 校验时间的方法
        /// </summary>
        /// <param name="socket"></param>
        /// <param name="info"></param>
        /// <param name="bys"></param>

        private void checkTimeMethod(Socket socket, MacIPVersionInfo info, byte[] bys)
        {
            //Task.Factory.StartNew(() =>
            //{



            //});


            var time           = TianMao.GetCRC("55ff0e" + StrHelper.GetCheckTimeStr());
            var check_time_msg = StrHelper.strToHexByte(time);

            try
            {
                socket.Send(check_time_msg);
            }
            catch (Exception ex)
            {
                Console.WriteLine("tcp 462" + ex.Message);
                var ipe     = (IPEndPoint)socket.RemoteEndPoint;
                var address = ipe.Address.ToString();
                var port    = ipe.Port;
                Program.removeOnlineTcpRelation(address, port);


                Func <bool> func1 = () => true;
                var         msgx  = "tcp 462" + ex.Message;
                LogHelper.LogFilter(func1, msgx);
            }
        }
示例#2
0
        public static byte[] CRC_RTU(string hexstr)
        {
            var bytes = StrHelper.strToHexByte(hexstr);

            byte[] crcBytes     = new byte[2];
            byte[] sendResponse = new byte[bytes.Length + crcBytes.Length];
            bytes.CopyTo(sendResponse, 0);
            CRC16.GetCRC(sendResponse, ref crcBytes);
            sendResponse[sendResponse.Length - 1] = crcBytes[1]; //高8位
            sendResponse[sendResponse.Length - 2] = crcBytes[0]; //低8位
            return(sendResponse);
        }