问题1: error C3861: “pcap_open”: 找不到标识
“pcap_findalldevs_ex”: 找不到标识符
相关说明:我用的环境是Codeblocks 13.12+Win32 SDK+winpcap SDK 4.1.2,在该项目中正确的配置了include路径和lib路径。
解决方法:这两个问题的出现源于缺少了一个宏定义 HAVE_REMOTE
#define HAVE_REMOTE #include "pcap.h"
即可解决。
问题2:编译的时候提示LNK错误
解决方法:1.设置相关的Lib路径,2.检查winpcap运行时的版本是x32还是x64,选择相应的库。
问题3:出现如下错误
main.obj : error LNK2019: unresolved external symbol _pcap_open_live referenced in function _init
main.obj : error LNK2019: unresolved external symbol _pcap_freealldevs referenced in function _init
main.obj : error LNK2019: unresolved external symbol _pcap_findalldevs referenced in function _init
main.obj : error LNK2019: unresolved external symbol _pcap_geterr referenced in function _sendPacket
main.obj : error LNK2019: unresolved external symbol _pcap_sendpacket referenced in function _sendPacket
main.obj : error LNK2019: unresolved external symbol _pcap_next_ex referenced in function _recvPacket
bin\Debug\winpcap.exe : fatal error LNK1120: 6 unresolved externals
解决方法:该问题出在64位系统上,使用的软件的CodeBlocks,好像该软件只能认x32,所以选择相应的X64库即可。