WEB开发网
开发学院操作系统windows 2008 深度剖析WinPcap之(七)——获得与释放网络适配器设... 阅读

深度剖析WinPcap之(七)——获得与释放网络适配器设备列表(1)

 2009-09-11 00:00:00 来源:WEB开发网   
核心提示: void pcap_freealldevs(pcap_if_t *alldevsp ) 1.2 获得与释放网络适配器列表的实例下列代码能获取适配器列表,并在屏幕上显示出来,深度剖析WinPcap之(七)——获得与释放网络适配器设备列表(1)(5),如果没有找到适配器,将打印错误信息,程序返回 f

void pcap_freealldevs(pcap_if_t *alldevsp )

1.2    获得与释放网络适配器列表的实例

下列代码能获取适配器列表,并在屏幕上显示出来,如果没有找到适配器,将打印错误信息。并在程序结束时释放设备列表。

#include "remote-ext.h"
#include "pcap.h"
 
main()
{
    pcap_if_t *alldevs;
    pcap_if_t *d;
    int i=0;
    char errbuf[PCAP_ERRBUF_SIZE];
  
//获取本地机器设备列表
if (pcap_findalldevs_ex(PCAP_SRC_IF_STRING, NULL , &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)
{ 
//没找到设备接口,确认WinPcap已安装,程序退出
        printf("\nNo interfaces found! Make sure WinPcap is installed.\n");
        return;
    }
 
//不再需要设备列表了,释放它
pcap_freealldevs(alldevs);
}

上一页  1 2 3 4 5 6 7 8  下一页

Tags:深度 剖析 WinPcap

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接