欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

利用mic visual studio 2010 编译器执行wincap获取网络适配器的代码

发布时间:2023/12/18 编程问答 38 豆豆
生活随笔 收集整理的这篇文章主要介绍了 利用mic visual studio 2010 编译器执行wincap获取网络适配器的代码 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

    WinPcap提供了 pcap_findalldevs_ex() 函数来实现这个功能: 这个函数返回一个 pcap_if 结构的链表, 每个这样的结构都包含了一个适配器的详细信息。值得注意的是,数据域 name 和 description 表示一个适配器名称和一个可以让人们理解的描述。

  下列代码能获取适配器列表,并在屏幕上显示出来,如果没有找到适配器,将打印错误信息。

核心代码:

#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 /* auth is not needed */, &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);        elseprintf(" (No description available)\n");}    if (i == 0){printf("\nNo interfaces found! Make sure WinPcap is installed.\n");        return;}    /* 不再需要设备列表了,释放它 */pcap_freealldevs(alldevs); }int pcap_findalldevs_ex  (    char *     source,    struct pcap_rmtauth * auth,    pcap_if_t **     alldevs,    char *     errbuf    )


转载于:https://blog.51cto.com/12044867/1865455

总结

以上是生活随笔为你收集整理的利用mic visual studio 2010 编译器执行wincap获取网络适配器的代码的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。