winpcap环境部署问题

Winpcap是windows平台下的一个专业Winpcap是一个强大的网络开发库,可以实现许多功能:获取可用的网络适配器;获取指定适配器信息(比如名称和描述信息);捕获指定网卡的数据封包;发送数据封包;过滤捕获的包以获取特定包等。    

     1. 到官网www.winpcap.org下载安装winpcap,为应用程序的运行做准备,如wireshark就需要先安装此包;

      2.到www.winpcap.org/devel.html下载程序员开发包,解压后除了一些文档、example和demo,要用到的就是include和Lib文件夹;

      3.打开vc6.0在project Settings中添加刚才include和Lib的路径(或者直接把第二部解压得到的.Lib和.h直接放到vc安装目录对应位置);

      4.在Link选项卡加入wpcap.lib ws2_32.lib Packet.lib

      5.在预定义宏添加WPCAP,HAVE_REMOTE或直接在pcap.h文件中加入

        #define WPCAP

       #define HAVE_REMOTE

        在编译程序时出现wpdpack\include\pcap-stdinc.h(79) : error C2144: syntax error : missing ';' before type 'unsigned int' ,因为vc6.0版本太低,需要安装psdk。或者直接定位到错误处把_W64删除就ok了。

定义
[WinPcap用户指南]

 

结构体

struct  pcap_file_header
 libpcap堆文件首部 更多...
struct  pcap_pkthdr
 堆文件中包的首部 更多...
struct  pcap_stat
 保存一个接口统计值的结构体 更多...
struct  pcap_if
 接口列表中的一项,在 pcap_findalldevs()中被使用 更多...
struct  pcap_addr
 表示一个接口地址,在 pcap_findalldevs()中被使用 更多...

宏定义

#define PCAP_VERSION_MAJOR   2
 主要libpcap堆文件版本
#define PCAP_VERSION_MINOR   4
 次要libpcap堆文件版本
#define PCAP_ERRBUF_SIZE   256
 libpcap错误信息缓存的大小
#define PCAP_IF_LOOPBACK   0x00000001
 接口是回调的 (interface is loopback)
#define MODE_CAPT   0
 捕捉模式,在调用 pcap_setmode() 时被使用。
#define MODE_STAT   1
 统计模式,在调用 pcap_setmode() 时被使用。

自定义类型

typedef int bpf_int32
 32-bit integer
typedef u_int bpf_u_int32
 32-bit unsigned integer
typedef pcap pcap_t
 一个已打开的捕捉实例的描述符。这个结构体对用户来说是不透明的,它通过wpcap.dll提供的函数,维护了它的内容。
typedef pcap_dumper pcap_dumper_t
 libpcap存储文件的描述符
typedef pcap_if pcap_if_t
 接口列表中的一项,参见 pcap_if
typedef pcap_addr pcap_addr_t
 表示一个接口地址,参见 pcap_addr

详细描述

wpcap.dll的定义

定义文档

#define MODE_CAPT   0

捕获模式,在调用 pcap_setmode() 时被使用

172 行,文件 incs/pcap.h.

#define MODE_STAT   1

统计模式,在调用 pcap_setmode() 时被使用

173 行,文件 incs/pcap.h.

#define PCAP_ERRBUF_SIZE   256

libpcap错误信息缓存的大小

59 行,文件 incs/pcap.h.

#define PCAP_IF_LOOPBACK   0x00000001

接口是回调的 (interface is loopback)

156 行,文件 incs/pcap.h.

#define PCAP_VERSION_MAJOR   2

主要libpcap堆文件版本

56 行,文件 incs/pcap.h.

#define PCAP_VERSION_MINOR   4

次要libpcap堆文件版本

57 行,文件 incs/pcap.h.


自定义类型文档

typedef int bpf_int32

32-bit integer

与拥有bpf.h的系统兼容,bpf的自定义类型已经提供了对64位的支持。

66 行,文件 incs/pcap.h.

typedef u_int bpf_u_int32

32-bit unsigned integer

67 行,文件 incs/pcap.h.

typedef struct pcap_addrpcap_addr_t

表示一个接口地址,参见 pcap_addr.

73 行,文件 incs/pcap.h.

typedef struct pcap_dumper pcap_dumper_t

libpcap存储文件的描述符

71 行,文件 incs/pcap.h.

typedef struct pcap_ifpcap_if_t

接口列表的一项,参见 pcap_if.

72 行,文件 incs/pcap.h.

typedef struct pcap pcap_t

一个已打开的捕捉实例的描述符。这个结构体对用户来说是不透明的,它通过wpcap.dll提供的函数,维护了它的内容。

70 行,文件 incs/pcap.h.


documentation. Copyright (c) 2002-2005 Politecnico di Torino. Copyright (c) 2005-2007 CACE Technologies. All rights reserved.
2007 Translated By CoffeeCat Studio

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值