WinPcap编程0x0200 第一个程序

来源:互联网 发布:成都国信安 知乎 编辑:程序博客网 时间:2024/04/29 13:58

0x0200 下载文件

下载Winpcap安装包,地址http://www.winpcap.org/install/default.htm

下载WinPcap developer's packhttp://www.winpcap.org/devel.htm

解压WinPcap developer's pack,里面有配置好的例子和includelibrary

0x0201 环境配置

VC2008为例(WinPcap developer's pack解压在C:\WpdPack\),

 

点击“工具”→“选项”→“项目和解决方案”→“VC++目录”

平台:Win32,显示以下内容的目录:包含文件。

单击“新行”(文件夹样式的按钮),找到C:\WpdPack\Include

平台:Win32,显示以下内容的目录:库文件。

单击“新行”(文件夹样式的按钮),找到C:\WpdPack\Lib

 

0x0202 编写程序,

第一个程序的目标是列举出网络设备名称

#include <pcap.h>main( ){    pcap_if_t *alldevs;    pcap_if_t *d;    int i=0;    char errbuf[PCAP_ERRBUF_SIZE];    if (pcap_findalldevs(&alldevs, errbuf) == -1)    {        fprintf(stderr,"Error in pcap_findalldevs_ex: %s\n", errbuf);        exit(1);    }    for(d= alldevs; d != NULL; d= d->next)    {        printf("%d. %s", ++i, d->name);        if (d->description)            printf(" (%s)\n", d->description);        else            printf(" (No description available)\n");    }    if (i == 0)    {        printf("\nNo interfaces found! Make sure WinPcap is installed.\n");        return -1;    }    pcap_freealldevs(alldevs);    return 0;}



 

0x0203 调试不通过怎么办

编译时会提示:无法解析符号XXXX

这是因为程序没有包含wpcap.lib的原因。

解决方法:单击“项目”→“属性”→“配置属性”→“连接器”→“输入”→在“附加依赖项”中填写:wpcap.lib

不要忘了,当前是debug模式,如果改为Release模式同样需要以上操作。

 

 

原创粉丝点击