要成为一个出色的程序猿,还是很讲究猿粪的!
分类: Windows平台
2013-06-07 11:36:17
1、下载Microsoft Platform SDK
找到跟你的系统匹配的SDK,可能有多个包,我下的有16个,一个一个地下,解压第一个包,点击安装
2、下载winpcap,点击安装
3、下载WpdPack_4_1_2开发包
4、下载libnet-1.1.2.1源码
5、编译libnet,生成libnet.dll和libnet.lib文件
解压libnet-1.1.2.1,进入目录win32,用VC6.0打开libnet.dsw文件,
(1)在VC的[工具]->[选项]->[目录]中分别添加sdk的include路径和library路径:
C:\Program Files\Microsoft Platform SDK\Include
C:\Program Files\Microsoft Platform SDK\Lib
然后添加WpdPack的include路径和library路径:
E:\Downloads\windows数据包捕获\WpdPack_4_1_2\WpdPack\Include
E:\Downloads\windows数据包捕获\WpdPack_4_1_2\WpdPack\Lib
然后添加libnet的include路径:
E:\Downloads\windows数据包捕获\libnet-1.1.2.1\libnet\include
提示1: 用libnet开发程序时别忘了添加libnet.lib
提示2: 还要添加libnet的library路径:E:\Downloads\windows数据包捕获\libnet-1.1.2.1\libnet\win32\Debug(根据libnet安装位置灵活掌握)
提示3: 若要在程序中使用套接字,还须加#pragma comment(lib, "wsock32.lib")。
提示4:如果编译libnet的自带例子,还要添加include路径:E:\Downloads\windows数据包捕获\libnet-1.1.2.1\libnet\sample
注:做程序开发时如果出现错误:“packet32.h(231) : error C2079: 'IPAddress' uses undefined struct 'sockaddr_storage'”,改错方法如下:
手工向winpcap库的packet32.h文件中加入如下代码,且应位于“struct
npf_if_addr”定义之前:
#ifndef
_SS_PAD1SIZE
struct sockaddr {
u_char sa_len;
u_char sa_family;
u_char padding[128];
};
#endif