TestForm.cs 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. using Oreo.NetMonitor.Commons;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Diagnostics;
  5. using System.Linq;
  6. using System.Net;
  7. using System.Net.NetworkInformation;
  8. using System.Net.Sockets;
  9. using System.Threading;
  10. using System.Threading.Tasks;
  11. using System.Windows.Forms;
  12. using Y.Utils.DataUtils.Collections;
  13. using Y.Utils.DataUtils.UnitConvertUtils;
  14. using Y.Utils.NetUtils.NetInfoUtils;
  15. namespace Oreo.NetMonitor.Views
  16. {
  17. public partial class TestForm : Form
  18. {
  19. NetFlowTool nft = new NetFlowTool();
  20. List<NetPacketTool> npt = new List<NetPacketTool>();
  21. public TestForm()
  22. {
  23. InitializeComponent();
  24. }
  25. private void TestForm_Load(object sender, EventArgs e)
  26. {
  27. nft.Start();
  28. nft.DataMonitorEvent += DataMonitorEvent;
  29. List<IPAddress> hosts = NetCardInfoTool.GetIPv4Address();
  30. foreach (var host in hosts)
  31. {
  32. NetPacketTool p = new NetPacketTool(host);
  33. p.NewPacket += new NewPacketEventHandler(OnNewPacket);
  34. p.Start();
  35. npt.Add(p);
  36. }
  37. }
  38. public void DataMonitorEvent(NetFlowTool n)
  39. {
  40. R.Log.v("upload data: " + ByteConvertTool.Fmt(n.UploadData) +
  41. " download data: " + ByteConvertTool.Fmt(n.DownloadData));
  42. }
  43. private void OnNewPacket(NetPacketTool pm, Packet p)
  44. {
  45. R.Log.e(p.TotalLength);
  46. }
  47. }
  48. }