資源簡(jiǎn)介
在vs2010上做的一個(gè)計(jì)算機(jī)網(wǎng)路課設(shè),實(shí)現(xiàn)抓取數(shù)據(jù)包,并重點(diǎn)對(duì)TCP協(xié)議進(jìn)行分析,附有詳細(xì)報(bào)告
代碼片段和文件信息
//?AdpDlg.cpp?:?實(shí)現(xiàn)文件
//
#include?“pcap.h“
#include?“stdafx.h“
#include?“MyNetSiniffer.h“
#include?“AdpDlg.h“
#include?“afxdialogex.h“
//?CAdpDlg?對(duì)話框
IMPLEMENT_DYNAMIC(CAdpDlg?CDialogEx)
CAdpDlg::CAdpDlg(CWnd*?pParent?/*=NULL*/)
:?CDialogEx(CAdpDlg::IDD?pParent)
{
}
CAdpDlg::~CAdpDlg()
{
}
void?CAdpDlg::DoDataExchange(CDataExchange*?pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Control(pDX?IDC_LIST1?m_list1);
DDX_Control(pDX?IDC_EDIT1?m_edit1);
}
BEGIN_MESSAGE_MAP(CAdpDlg?CDialogEx)
ON_NOTIFY(NM_CLICK?IDC_LIST1?&CAdpDlg::onclickList1)
ON_BN_CLICKED(IDBIND?&CAdpDlg::onclickedIdbind)
END_MESSAGE_MAP()
//?CAdpDlg?消息處理程序
BOOL?CAdpDlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
//?TODO:??在此添加額外的初始化
m_list1.SetExtendedstyle(m_list1.GetExtendedstyle()?|?LVS_EX_FULLROWSELECT?|?LVS_EX_GRIDLINES);
m_list1.InsertColumn(0_T(“設(shè)備名“)LVCFMT_LEFT350);
m_list1.InsertColumn(1_T(“設(shè)備描述“)LVCFMT_LEFT250);
//獲取網(wǎng)卡列表
char?errbuf[PCAP_ERRBUF_SIZE];
if?(pcap_findalldevs_ex(PCAP_SRC_IF_STRING?NULL?&alldevs?errbuf)?==?-1)
return?FALSE;
for(d=alldevs;?d;?d=d->next)
{
m_list1.InsertItem(0(CString)d->name); //d->name的類型是char?*需要強(qiáng)制轉(zhuǎn)換為CString才能在InsertItem中顯示
m_list1.SetItemText(01(CString)d->description);
}
d?=?NULL;?//清空以便其他函數(shù)使用
//獲取網(wǎng)卡列表結(jié)束
return?TRUE;??//?return?TRUE?unless?you?set?the?focus?to?a?control
//?異常:?OCX?屬性頁(yè)應(yīng)返回?FALSE
}
void?CAdpDlg::onclickList1(NMHDR?*pNMHDR?LRESULT?*pResult)
{
LPNMITEMACTIVATE?pNMItemActivate?=?reinterpret_cast(pNMHDR);
//?TODO:?在此添加控件通知處理程序代碼
*pResult?=?0;
NMLISTVIEW?*pNMListView?=?(NMLISTVIEW*)pNMHDR;???
if?(-1?!=?pNMListView->iItem)????????//?如果iItem不是-1,就說明有列表項(xiàng)被選擇???
{???
//?獲取被選擇列表項(xiàng)第一個(gè)子項(xiàng)的文本???
adpname?=?m_list1.GetItemText(pNMListView->iItem?0);???
//?將選擇的語言顯示與編輯框中???
SetDlgItemText(IDC_EDIT1?adpname);???
}???
}
//返回已選中設(shè)備
pcap_if_t*?CAdpDlg::GetDevice()
{
if(adpname)
{
for(d=alldevs;?d;?d=d->next)
if(d->name?==?adpname)
return?d;
}
return?NULL;
}
pcap_if_t*?CAdpDlg::returnd()
{
return?d;
}
void?CAdpDlg::onclickedIdbind()
{
//?TODO:?在此添加控件通知處理程序代碼
d?=?GetDevice();
if(d)
{
MessageBox(_T(“網(wǎng)卡綁定成功!“));
CDialogEx::OnOK();
}
else
MessageBox(_T(“請(qǐng)選擇要綁定的網(wǎng)卡“));
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-12-02?21:03??基于winpcap的TCP協(xié)議分析\
?????目錄???????????0??2018-11-24?20:38??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\
?????目錄???????????0??2018-10-27?17:08??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\Debug\
?????文件??????330240??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\Debug\MyNetSiniffer.exe
?????文件?????1382100??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\Debug\MyNetSiniffer.ilk
?????文件?????5983232??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\Debug\MyNetSiniffer.pdb
?????目錄???????????0??2018-11-24?18:33??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\
?????文件??????????58??2018-12-05?13:47??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer.opensdf
?????文件????71520256??2018-12-05?13:48??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer.sdf
?????文件?????????906??2018-10-26?21:54??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer.sln
?????文件???????29696??2018-12-04?17:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer.suo
?????文件????????2517??2018-10-27?12:19??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\AdpDlg.cpp
?????文件?????????712??2018-10-27?12:19??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\AdpDlg.h
?????文件???????????1??2009-08-31?02:02??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\ClassDiagram1.cd
?????目錄???????????0??2018-10-27?17:28??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\
?????文件???????36479??2018-12-04?15:32??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\AdpDlg.obj
?????文件???????10970??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\cl.command.1.tlog
?????文件??????160584??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\CL.read.1.tlog
?????文件????????6842??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\CL.write.1.tlog
?????文件???????32095??2018-12-04?15:32??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\FilterDlg.obj
?????文件???????????2??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\li
?????文件???????????2??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\li
?????文件????????5318??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\li
?????文件???????13528??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\li
?????文件????????3550??2018-12-04?16:10??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\li
?????文件????????1606??2018-12-05?13:48??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\mt.command.1.tlog
?????文件????????1486??2018-12-05?13:48??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\mt.read.1.tlog
?????文件?????????526??2018-12-05?13:48??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\mt.write.1.tlog
?????文件????????3088??2018-12-02?15:47??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\MyNetSiniffer.Build.CppClean.log
?????文件?????????915??2018-12-02?15:48??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\MyNetSiniffer.exe.em
?????文件?????????980??2018-12-04?15:32??基于winpcap的TCP協(xié)議分析\MyNetSiniffer\MyNetSiniffer\Debug\MyNetSiniffer.exe.em
............此處省略39個(gè)文件信息
評(píng)論
共有 條評(píng)論