Example #1
0
        private void DealwithCmd()
        {
            string s = GetCommandLine().Trim();

            if (s != "")
            {
                if (s.ToUpper().StartsWith("PRINT"))
                {
                    string[] splits = Regex.Split(s, @"\s{1,}");
                    if (splits.Length != 3)
                    {
                        throw new Exception("PRINT格式不对");
                    }
                    Packet c = new PrintPacket(splits[1], splits[2], CmdCB);
                    c.EcChannel = ec;
                    c.Send();
                }
                else
                {
                    CmdPacket c = new CmdPacket(s, CmdCB);
                    c.EcChannel = ec;
                    c.Send();
                }
            }
            else
            {
                richTextBox1.Text += "\r\n" + "请检查命令格式!";
                richTextBox1.Text += "\r\n" + (char)9632;
            }
        }
Example #2
0
 public static void Test_ReadPcap_02(string file, bool detail = false)
 {
     Trace.WriteLine("read file \"{0}\"", file);
     using (PcapFileReader pcapFileReader = new PcapFileReader(GetPath(file)))
     {
         PPacketManager ppacketManager = new PPacketManager();
         foreach (PcapPacket packet in pcapFileReader)
         {
             Packet packet2 = new Packet(packet.Data, packet.Timestamp, DataLinkKind.Ethernet);
             //Trace.WriteLine("packet no {0}", packet.Index);
             //PrintPacketHandler2(ppacketManager.CreatePPacket(packet2), detail);
             PrintPacket.PrintPacket1(ppacketManager.CreatePPacket(packet2), detail);
         }
     }
 }
Example #3
0
        public static void Test_PrintPackets_01(string deviceName = null, bool detail = false)
        {
            _tr.WriteLine("Test_PrintPackets_01");

            //string dumpFile = @"dump\dump.pcap";
            //string dumpFile = @"dump\dump.pcapng";
            //dumpFile = GetPath(dumpFile);
            PacketDevice device = SelectDevice(deviceName);

            if (device == null)
            {
                return;
            }

            __communicator = null;
            //_rs.OnAbortExecution += new OnAbortEvent(OnAbortExecution);
            _rs.OnAbortExecution = OnAbortExecution;
            try
            {
                using (__communicator = device.Open(65536, PacketDeviceOpenAttributes.Promiscuous, 1000))
                {
                    //using (BerkeleyPacketFilter filter = __communicator.CreateFilter("ip and udp"))
                    //{
                    //    __communicator.SetFilter(filter);
                    //}

                    _tr.WriteLine("Listening on " + device.Description + "...");

                    //__communicator.ReceivePackets(0, PrintPacketHandler1);
                    //__communicator.zReceivePackets(0, PrintPacketHandler2);

                    PPacketManager ppacketManager = new PPacketManager();
                    PrintPacketHandler2Header();
                    //__communicator.ReceivePackets(0, packet => PrintPacketHandler2(ppacketManager.CreatePPacket(packet), detail));
                    __communicator.ReceivePackets(0, packet => PrintPacket.PrintPacket1(ppacketManager.CreatePPacket(packet), detail));
                }
            }
            //catch (Exception ex)
            //{
            //    _tr.WriteLine(ex.Message);
            //}
            finally
            {
                //_rs.OnAbortExecution -= new OnAbortEvent(OnAbortExecution);
            }
        }
Example #4
0
        static void OnPrintPacketReceived(PrintPacket printPacket)
        {
            if (printPacket.Text == null)
            {
                return;
            }

            var lines = printPacket.Text.Split('\n');

            foreach (var line in lines)
            {
                ScreenManager.Console.Add(new Part(line));

                if (!ScreenManager.IsConsoleOpen)
                {
                    ScreenManager.Log.AddSystemMessage(new Part(line));
                }
            }
        }
Example #5
0
 private void DealwithCmd()
 {
     string s = GetCommandLine().Trim();
     if (s != "")
     {
         if (s.ToUpper().StartsWith("PRINT"))
         {
             string[] splits=Regex.Split(s,@"\s{1,}");
             if (splits.Length != 3) { throw new Exception("PRINT格式不对"); }
             Packet c = new PrintPacket(splits[1], splits[2], CmdCB);
             c.EcChannel = ec;
             c.Send();
         }
         else
         {
             CmdPacket c = new CmdPacket(s, CmdCB);
             c.EcChannel = ec;
             c.Send();
         }
     }
     else
     {
         richTextBox1.Text += "\r\n" + "请检查命令格式!";
         richTextBox1.Text += "\r\n" + (char)9632;
     }
 }