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