• 大小: 1.99MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-11-03
  • 语言: C/C++
  • 标签: c++  嗅探器  

资源简介

使用Winpcap捕获网络数据包,能自定义抓包规则,并且实现了对数据包的分析 系统在设计过程中按照MVC的设计模式,整体分为三层。第一层为Control层即控制层,这里为简化设计,将Control层分为两个部分,一部分为网络报文输入,另一部分为用户输入;第二层是Model层即模型层;第三层为View层即显示层。 系统的整体运行过程为:从Control层得到数据,交到Model层进行处理,将处理完的结果交View层进行显示。Control层主要用于网络数据包的捕获以及获得用户的输入; Model层主要用于分析数据包,处理用户的输入;View层主要用于对处理后的结果进行显示。

资源截图

代码片段和文件信息

// AdapaterSelection.cpp : implementation file
//

#include “stdafx.h“
#include “CapturePacket.h“
#include “AdapaterSelection.h“

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CAdapaterSelection dialog


CAdapaterSelection::CAdapaterSelection(CWnd* pParent /*=NULL*/)
: CDialog(CAdapaterSelection::IDD pParent)
{
//{{AFX_DATA_INIT(CAdapaterSelection)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}


void CAdapaterSelection::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAdapaterSelection)
DDX_Control(pDX IDC_TREE_NETWORKADAPTERS m_treeAdapater);

//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CAdapaterSelection CDialog)
//{{AFX_MSG_MAP(CAdapaterSelection)
ON_NOTIFY(NM_DBLCLK IDC_TREE_NETWORKADAPTERS OnDblclkTreeNetworkadapters)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CAdapaterSelection message handlers

BOOL CAdapaterSelection::OnInitDialog() 
{
CDialog::OnInitDialog();

// TODO: Add extra initialization here
    
//初始化树形选择
    HTREEITEM root = m_treeAdapater.InsertItem(_T(“网络适配器“));

if(pcap_findalldevs(&m_pAllDevs m_strErrorBuf) == -1)
return FALSE;

for(m_pDev = m_pAllDevs;m_pDev != NULL;m_pDev = m_pDev->next)
{
char temp[400];
CString strText;
HTREEITEM hSubItem = m_treeAdapater.InsertItem(m_pDev->nameroot);
if(m_pDev->description != NULL)
{
    strText.Format(“网卡描述信息 : %s“m_pDev->description);
m_treeAdapater.InsertItem(strTexthSubItem);
}
else
{
m_treeAdapater.InsertItem(“网卡描述信息 : 空“hSubItem);
}

if(m_pDev->addresses != NULL && m_pDev->addresses->addr != NULL)
{
iptos(((struct sockaddr_in *)m_pDev->addresses->addr)->sin_addr.s_addrtemp);
strText.Format(“IP地址 : %s“temp);
m_treeAdapater.InsertItem(strTexthSubItem);
}
else
{
m_treeAdapater.InsertItem(“IP地址 :  空“hSubItem);
}

if(m_pDev->addresses != NULL && m_pDev->addresses->broadaddr != NULL)
{
iptos(((struct sockaddr_in *)m_pDev->addresses->broadaddr)->sin_addr.s_addrtemp);
strText.Format(“广播地址 : %s“temp);
m_treeAdapater.InsertItem(strTexthSubItem);

}
else
{
m_treeAdapater.InsertItem(“广播地址 : 无“hSubItem);
}

if(m_pDev->addresses!=NULL && m_pDev->addresses->netmask!=NULL)
{
iptos(((struct sockaddr_in *)m_pDev->addresses->netmask)->sin_addr.s_addrtemp);
strText.Format(“子网掩码 : %s“temp);
m_treeAdapater.InsertItem(strTexthSubItem);
}
else
{
m_treeAdapater.InsertItem(“子网掩码 : 空“hSubItem);
}

if(m_pDev->addresses!=NULL && m_pDev->addresses->dstaddr!=NULL)
{
iptos(((struct sockaddr_in *)m_pDev->addresses->dstaddr)->sin_addr.s_addrtemp);
strText.Format(“目地地址 : %s“tem

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     102400  2008-01-06 02:45  网络嗅探器\可执行文件\CapturePacket.exe

     文件         10  2008-01-24 15:38  网络嗅探器\可执行文件\configuration\filter.cp

     文件     620659  2007-10-16 13:48  网络嗅探器\可执行文件\help.CHM

     文件     561648  2007-09-28 16:59  网络嗅探器\可执行文件\WinPcap_4_0_1.exe

     文件        515  2007-10-16 14:18  网络嗅探器\可执行文件\首次使用必读.txt

     文件       4552  2007-10-04 17:34  网络嗅探器\源代码文件\AdapaterSelection.cpp

     文件       1553  2007-10-04 17:34  网络嗅探器\源代码文件\AdapaterSelection.h

     文件        860  2007-10-23 00:36  网络嗅探器\源代码文件\app.manifest

     文件      13541  2004-12-21 23:03  网络嗅探器\源代码文件\appface.h

     文件       2532  2004-12-20 14:16  网络嗅探器\源代码文件\appface.lib

     文件       2507  2007-10-09 01:46  网络嗅探器\源代码文件\ARPPacket.cpp

     文件       1336  2007-10-09 01:02  网络嗅探器\源代码文件\ARPPacket.h

     文件      86140  2007-10-23 01:06  网络嗅探器\源代码文件\CapturePacket.aps

     文件       4031  2007-11-16 16:27  网络嗅探器\源代码文件\CapturePacket.clw

     文件       2288  2007-10-11 01:06  网络嗅探器\源代码文件\CapturePacket.cpp

     文件       4947  2007-10-23 01:06  网络嗅探器\源代码文件\CapturePacket.dsp

     文件        551  2007-10-04 10:56  网络嗅探器\源代码文件\CapturePacket.dsw

     文件     106496  2008-01-06 02:45  网络嗅探器\源代码文件\CapturePacket.exe

     文件       1403  2007-10-11 01:06  网络嗅探器\源代码文件\CapturePacket.h

     文件     181248  2007-11-16 16:27  网络嗅探器\源代码文件\CapturePacket.ncb

     文件      61952  2007-11-16 16:27  网络嗅探器\源代码文件\CapturePacket.opt

     文件       1284  2007-10-23 01:05  网络嗅探器\源代码文件\CapturePacket.plg

     文件      10653  2007-10-23 01:06  网络嗅探器\源代码文件\CapturePacket.rc

     文件      28817  2007-10-23 01:01  网络嗅探器\源代码文件\CapturePacketDlg.cpp

     文件       3274  2007-10-16 00:58  网络嗅探器\源代码文件\CapturePacketDlg.h

     文件         10  2007-10-16 13:28  网络嗅探器\源代码文件\configuration\filter.cp

     文件       3707  2007-10-09 11:44  网络嗅探器\源代码文件\DirDialog.cpp

     文件        669  2007-10-09 11:41  网络嗅探器\源代码文件\DirDialog.h

     文件       1773  2007-10-23 01:00  网络嗅探器\源代码文件\FilterDl.cpp

     文件       1284  2007-10-23 00:56  网络嗅探器\源代码文件\FilterDl.h

............此处省略39个文件信息

评论

共有 条评论