-
大小: 13.33MB文件類型: .zip金幣: 1下載: 0 次發(fā)布日期: 2023-07-30
- 語言: C/C++
- 標(biāo)簽: 仿Wireshark??
資源簡介
最近在用Wireshark抓包工具的時候,老感覺這東西用起來很簡單,功能強(qiáng)大,所以想了解他的實現(xiàn)原理,我就自己好奇寫了一個實現(xiàn)基本功能的demo吧。
其實叫抓包工具,其實就是抓取流經(jīng)自己網(wǎng)卡的所有ip包,我們能夠按照ip包的協(xié)議解析不就行了。
代碼片段和文件信息
//?IPATTRC.cpp?:?定義應(yīng)用程序的類行為。
//
#include?“stdafx.h“
#include?“IPATTRC.h“
#include?“IPATTRCDlg.h“
#ifdef?_DEBUG
#define?new?DEBUG_NEW
#endif
//?CIPATTRCApp
BEGIN_MESSAGE_MAP(CIPATTRCApp?CWinApp)
ON_COMMAND(ID_HELP?&CWinApp::onhelp)
END_MESSAGE_MAP()
//?CIPATTRCApp?構(gòu)造
CIPATTRCApp::CIPATTRCApp()
{
//?支持重新啟動管理器
m_dwRestartManagerSupportFlags?=?AFX_RESTART_MANAGER_SUPPORT_RESTART;
//?TODO:?在此處添加構(gòu)造代碼,
//?將所有重要的初始化放置在?InitInstance?中
}
//?唯一的一個?CIPATTRCApp?對象
CIPATTRCApp?theApp;
//?CIPATTRCApp?初始化
BOOL?CIPATTRCApp::InitInstance()
{
//?如果一個運行在?Windows?XP?上的應(yīng)用程序清單指定要
//?使用?ComCtl32.dll?版本?6?或更高版本來啟用可視化方式,
//則需要?InitCommonControlsEx()。否則,將無法創(chuàng)建窗口。
INITCOMMONCONTROLSEX?InitCtrls;
InitCtrls.dwSize?=?sizeof(InitCtrls);
//?將它設(shè)置為包括所有要在應(yīng)用程序中使用的
//?公共控件類。
InitCtrls.dwICC?=?ICC_WIN95_CLASSES;
InitCommonControlsEx(&InitCtrls);
CWinApp::InitInstance();
if?(!AfxSocketInit())
{
AfxMessageBox(IDP_SOCKETS_INIT_FAILED);
return?FALSE;
}
AfxEnableControlContainer();
//?創(chuàng)建?shell?管理器,以防對話框包含
//?任何?shell?樹視圖控件或?shell?列表視圖控件。
CShellManager?*pShellManager?=?new?CShellManager;
//?標(biāo)準(zhǔn)初始化
//?如果未使用這些功能并希望減小
//?最終可執(zhí)行文件的大小,則應(yīng)移除下列
//?不需要的特定初始化例程
//?更改用于存儲設(shè)置的注冊表項
//?TODO:?應(yīng)適當(dāng)修改該字符串,
//?例如修改為公司或組織名
SetRegistryKey(_T(“應(yīng)用程序向?qū)傻谋镜貞?yīng)用程序“));
CIPATTRCDlg?dlg;
m_pMainWnd?=?&dlg;
INT_PTR?nResponse?=?dlg.DoModal();
if?(nResponse?==?IDOK)
{
//?TODO:?在此放置處理何時用
//??“確定”來關(guān)閉對話框的代碼
}
else?if?(nResponse?==?IDCANCEL)
{
//?TODO:?在此放置處理何時用
//??“取消”來關(guān)閉對話框的代碼
}
//?刪除上面創(chuàng)建的?shell?管理器。
if?(pShellManager?!=?NULL)
{
delete?pShellManager;
}
//?由于對話框已關(guān)閉,所以將返回?FALSE?以便退出應(yīng)用程序,
//??而不是啟動應(yīng)用程序的消息泵。
return?FALSE;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2017-03-10?15:27??Debug\
?????文件??????255488??2017-03-10?16:39??Debug\IPATTRC.exe
?????文件?????2019716??2017-03-10?16:39??Debug\IPATTRC.ilk
?????文件?????5811200??2017-03-10?16:39??Debug\IPATTRC.pdb
?????目錄???????????0??2017-03-10?16:38??IPATTRC\
?????目錄???????????0??2017-03-10?16:39??IPATTRC\Debug\
?????文件??????101358??2017-03-10?16:39??IPATTRC\Debug\CL.read.1.tlog
?????文件????????2732??2017-03-10?16:39??IPATTRC\Debug\CL.write.1.tlog
?????文件?????????915??2017-03-09?09:26??IPATTRC\Debug\IPATTRC.exe.em
?????文件?????????980??2017-03-09?09:26??IPATTRC\Debug\IPATTRC.exe.em
?????文件?????????640??2017-03-10?16:39??IPATTRC\Debug\IPATTRC.exe.intermediate.manifest
?????文件??????????55??2017-03-10?16:39??IPATTRC\Debug\IPATTRC.lastbuildstate
?????文件????????3713??2017-03-10?16:39??IPATTRC\Debug\IPATTRC.log
?????文件???????74004??2017-03-10?15:27??IPATTRC\Debug\IPATTRC.obj
?????文件????33882112??2017-03-09?09:19??IPATTRC\Debug\IPATTRC.pch
?????文件???????69644??2017-03-10?16:38??IPATTRC\Debug\IPATTRC.res
?????文件??????227848??2017-03-10?16:39??IPATTRC\Debug\IPATTRCDlg.obj
?????文件?????????204??2017-03-09?09:21??IPATTRC\Debug\IPATTRC_manifest.rc
?????文件??????364191??2017-03-09?16:16??IPATTRC\Debug\Utils.obj
?????文件????????3682??2017-03-10?16:39??IPATTRC\Debug\cl.command.1.tlog
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
?????文件???????????2??2017-03-10?16:39??IPATTRC\Debug\li
............此處省略61個文件信息
評論
共有 條評論