//const UInt16 SeqNoBeginByte = 8; public void SendMessage <T>(T msgStructure) { byte[] bytPacketDatas; byte[] bytSendMsgDatas; //byte[] bytSeqNoDatas; //bytSeqNoDatas = BitConverter.GetBytes(getSendSeqNum()); bytPacketDatas = TCPUtility._Str2Packet(msgStructure); bytSendMsgDatas = TCPUtility.PrcCreateSendMessage_New(bytPacketDatas); LogCollection.TrxMsgInfo(TCPUtility.toStuctureString(msgStructure, Name, true)); Console.WriteLine("Send Data:{0}", TCPUtility.PrcConvBytes2HexStr(bytSendMsgDatas, bytSendMsgDatas.Length, " ")); //Array.Copy(bytSeqNoDatas, 0, bytSendMsgDatas, SeqNoBeginByte, bytSeqNoDatas.Length); Task taskSendMsg = null; switch (ConnectMode) { case TCPIP_AGENT_COMM_MODE.SERVER_MODE: taskSendMsg = session.SendAsync(bytSendMsgDatas); break; case TCPIP_AGENT_COMM_MODE.CLINET_MODE: taskSendMsg = ClientSession.SendAsync(bytSendMsgDatas); break; } taskSendMsg.Wait(); }
public void DecodReciveRawData(byte[] raw_data) { byte[] bytPacketDatas = null; int data_coune = raw_data.Length; int PacketID = 0; UInt16 SeqNum = 0; object objPacket = null; //while (data_coune >= LEN_MESSAGE_SIZE) //{ string result = TCPUtility.PrcConvBytes2HexStr(raw_data, raw_data.Length, " "); Console.WriteLine(reciveCount++); Console.WriteLine(result); // Check Message Header if ((raw_data[0] == '@') && (raw_data[1] == 'P') && (raw_data[2] == 'K') && (raw_data[3] == 'T')) { //bytPacketDatas = TCPUtility.PrcGetPacketFromMessage(raw_data); bytPacketDatas = TCPUtility.PrcGetPacketFromMessage_New(raw_data); PacketID = TCPUtility.PrcGetPacketID(bytPacketDatas); SeqNum = TCPUtility.PrcGetPacketSeqNum(bytPacketDatas); objPacket = bytPacketDatas; TcpIpEventArgs arg = new TcpIpEventArgs(PacketID, SeqNum, objPacket); onTcpIpReceive(PacketID, arg); dataSeqNoOrderToComfirm(PacketID, SeqNum); } //data_coune -= LEN_MESSAGE_SIZE; //Array.Copy(raw_data, LEN_MESSAGE_SIZE, raw_data, 0, data_coune); //} }
public void DecodReciveRawData_Google(byte[] raw_data) { byte[] bytPacketDatas = raw_data; UInt16 PacketID = 0; UInt16 SeqNum = 0; object objPacket = null; string result = TCPUtility.PrcConvBytes2HexStr(bytPacketDatas, bytPacketDatas.Length, " "); Console.WriteLine(reciveCount++); Console.WriteLine(result); unPackWrapperMsg(bytPacketDatas, out PacketID, out SeqNum, out objPacket); TcpIpEventArgs arg = new TcpIpEventArgs(PacketID, SeqNum, objPacket); onTcpIpReceive(PacketID, arg); dataSeqNoOrderToComfirm(PacketID, SeqNum); }