/************************************************************************/ /* 데이터를 파싱한다. * /************************************************************************/ public PacketHeader(MemoryStream ms) : this() { // 기본 해더 baseHeader = (byte)ms.ReadByte(); // 인크립스 encryt = (byte)ms.ReadByte(); // RequestID var requestIDBytes = new byte[20]; ms.Read(requestIDBytes, 0, requestIDBytes.Length); RequestID = Encoding.UTF8.GetString(requestIDBytes); var commandBuf = new byte[2]; ms.Read(commandBuf, 0, commandBuf.Length); var ohCommand = BitConverter.ToInt16(commandBuf, 0); ohCommand = IPAddress.NetworkToHostOrder(ohCommand); // 커멘드 처리 command = (PacketCommandType)ohCommand; // 데이터 타입 처리 dataType = (PacketDataType)ms.ReadByte(); // 성공 여부 처리 Success = (PacketSuccessType)ms.ReadByte(); }
public PacketHeader(PacketDataType dataType) : this() { this.dataType = dataType; Success = PacketSuccessType.None; }