网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > C# > 正文
用c#监控网络流量
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/14
下载{$ArticleTitle}原创论文样式
dress; }
   }

   public string Source
   {
    get
    {
     if ( m_SourcePort != -1 )
     {
      return SourceAddress.ToString() + ":" + m_SourcePort.ToString();
     }
     else
     {
      return SourceAddress.ToString();
     }
    }
   }

   public string Destination
   {
    get
    {
     if (this.m_DestinationPort != -1)
     {
      return DestinationAddress.ToString() + ":" + m_DestinationPort.ToString();
     }
     else
     {
      return DestinationAddress.ToString();
      }
    }
   }

   public string DestinationAddress
   {

    get
    {
     return m_DestinationAddress;
    }
   }
}
}



在主程序
private Monitor m_PacketMonitors;
   private ArrayList m_Packets;
   private System.Windows.Forms.StatusBar statusBar1;
   private int m_PacketsSize;

执行方法中
private void StartMonitor()
   {
    IPAddress hosts = Dns.Resolve(Dns.GetHostName()).AddressList;

    if (hosts.Length == 0) { throw new NotSupportedException("This computer does not have non-loopback interfaces installed!");}
    for (int i=0; i<hosts.Length; i++)
    {
    }

    m_PacketMonitors = new Monitor;
    m_Packets = new ArrayList();
    m_PacketMonitors[0] = new Monitor(hosts[0]);

// 添加代理,每次有新的packet到时都出发下面哪个动作
    m_PacketMonitors[0].NewPacket+=new Monitor.NewPacketEventHandler(this.OnNewPacket);
    m_PacketMonitors[0].Start();
   }

// 这个方法用于把packet显示到一个地方

private void OnNewPacket(Monitor m, Packet p)
   {
    m_Packets.Add(p);
    m_PacketsSize += p.TotalLength;
    try
    {
     txtLog.Text += p.Time.ToString()+p.Protocol.ToString()+p.Source.ToString()+p.Destination.ToString()+p.TotalLength.ToString();
  
    }
    catch (Exception e)
    {
     MessageBox.Show(e.Message);
    }

    statusBar1.Text = String.Format("Intercepted {0} packet(s) [{1} bytes]", m_Packets.Count, m_PacketsSize);

}

  • 上一篇资讯: C#中使用MAPI发送E-Mail
  • 下一篇资讯: C#中TreeView组件使用
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号