Chinaunix首页 | 论坛 | 博客
  • 博客访问: 682245
  • 博文数量: 79
  • 博客积分: 2608
  • 博客等级: 少校
  • 技术积分: 889
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-19 23:57
个人简介

一家之计在于和,一生之计在于勤。

文章分类

全部博文(79)

文章存档

2022年(2)

2019年(1)

2017年(1)

2015年(2)

2014年(2)

2013年(2)

2012年(2)

2011年(6)

2010年(20)

2009年(13)

2008年(28)

分类: C/C++

2009-04-16 16:29:53

WinPcap编程调试解决办法
 
在正式WinPcap编程之前,要配置运行环境。可以下载安装。
配置编程环境:
1、从上下载WINPCAP SDK -WpdPack,WinPcap SDk里面包含库文件,头文件,文档文件和一些例子。解压到一个指定的目录。解压缩后把Include目录添加到IDE的包含文件中(VC6.0 Tools->Option->Directory; VS 2003/2005 工具->选项->项目和解决方案/项目->VC++目录); lib目录添加为新的库文件目录(VC6.0 Tools->Option->Directory; VS 2003/2005 工具->选项->项目和解决方案/项目->VC++目录)如下图所示。
 
2、如果一个源文件使用了WinPcap提供的库函数,那么就需要在该文件开始的位置添加pcap.h包含文件(或者在引用的文件中),即#include “pcap.h”
不添加也许会出现下面的错误:
fatal error C1083: 无法打开包括文件:“pcap.h”: No such file or directory
这个错误表明找不到pcap.h文件,这个头文件在驱动程序安装完成后也是没有的,它是开发包里面的一个头文件,所以,如果要运行程序还需要到官方网站上去下载WinPcap SDK,并按步骤1添加到项目中。
 
3、 新的版本里WinPcap支持远程数据包获取,所以还应当添加一个头文件remote-ext.h ,即#include "remote-ext.h"(记住这条语句要放在#include “pcap.h”之后,否则会出错!)
否则会发生下面的错误
error C2065: “PCAP_SRC_IF_STRING”: 未声明的标识符
error C3861: “pcap_findalldevs_ex”: 找不到标识符
error C2065: “PCAP_OPENFLAG_PROMISCUOUS”: 未声明的标识符
error C3861: “pcap_open”: 找不到标识符
4、有时即便是按上面的方法都做了也解决不了,比如我这次就是还出现下面的问题:
错误 3 error LNK2019: 无法解析的外部符号 _pcap_loop,该符号在函数 _wmain 中被引用 
……
错误 8 error LNK2019: 无法解析的外部符号 _pcap_freealldevs,该符号在函数 _wmain 中被引用 
但是我用了下面的语句即可解决了:#pragma comment(lib, "wpcap.lib")
 
5、如果出现下面的问题:
错误 3 error LNK2019: 无法解析的外部符号 ,该符号在函数 "void __cdecl packet_handler(unsigned char *,struct pcap_pkthdr const *,unsigned char const *)" () 中被引用 
用下面的语句即可解决了:#pragma comment(lib, "ws2_32.lib")
 
阅读(10181) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~