Example #1
0
        private static byte[] RemovePacketFromPackage(byte[] Package, Addresses.Enums.IncomingPacketTypes PacketType)
        {
            try
            {
                int packetLength = 0, packagePos = 0;
                List<byte> newPacket = new List<byte>();

                while (packagePos < Package.Length)
                {
                    packetLength = BitConverter.ToInt16(Package, packagePos);
                    if (Package[packagePos + 2] != (byte)PacketType)
                    {
                        for (int i = 0; i < packetLength + 2; i++)
                        {
                            newPacket.Add(Package[packagePos + i]);
                        }
                    }
                    packagePos += packetLength + 2;
                }

                return newPacket.ToArray();
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(ex.Message);
                return null;
            }
        }