/// <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); } }
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); }