Microsoft Visual Studio 10.0执行WinPcap获取网络设配器的代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Microsoft Visual Studio 10.0执行WinPcap获取网络设配器的代码相关的知识,希望对你有一定的参考价值。

    WinPcap是一个基于Win32平台的,用于捕获网络数据包并进行分析的开源库.

大多数网络应用程序通过被广泛使用的操作系统元件来访问网络,比如sockets。  这是一种简单的实现方式,因为操作系统已经妥善处理了底层具体实现细节(比如协议处理,封装数据包等等),并且提供了一个与读写文件类似的,令人熟悉的接口。

然而,有些时候,这种“简单的方式”并不能满足任务的需求,因为有些应用程序需要直接访问网络中的数据包。也就是说,那些应用程序需要访问原始数据包,即没有被操作系统利用网络协议处理过的数据包。

WinPcap产生的目的,就是为Win32应用程序提供这种访问方式; WinPcap提供了以下功能

  • 捕获原始数据包,无论它是发往某台机器的,还是在其他设备(共享媒介)上进行交换的

  • 在数据包发送给某应用程序前,根据用户指定的规则过滤数据包

  • 将原始数据包通过网络发送出去

  • 收集并统计网络流量信息

以上这些功能需要借助安装在Win32内核中的网络设备驱动程序才能实现,再加上几个动态链接库DLL。

所有这些功能都能通过一个强大的编程接口来表现出来,易于开发,并能在不同的操作系统上使用。这本手册的主要目标是在一些程序范例的帮助下,叙述这些编程接口的使用。  

     通常,编写基于WinPcap应用程序的第一件事情,就是获得已连接的网络适配器列表。libpcap和WinPcap都提供了 pcap_findalldevs_ex() 函数来实现这个功能: 这个函数返回一个 pcap_if 结构的链表, 每个这样的结构都包含了一个适配器的详细信息。值得注意的是,数据域 namedescription 表示一个适配器名称和一个可以让人们理解的描述。

   首先配置Microsoft Visual Studio 10.0

项目-->**属性(alt+F7)

配置属性-->清单工具-->输入和输出-->嵌入清单-->否

项目-->**属性(alt+F7)

配置属性-->C/C++-->常规-->附加包含目录-->

项目-->**属性(alt+F7)

配置属性-->链接器-->常规-->附加库目录-->

项目-->**属性(alt+F7)

配置属性-->链接器-->输入-->附加依赖项-->补充“;Packet.lib;wpcap.lib”

项目-->**属性(alt+F7)

配置属性-->C/C++-->预处理器-->预处理器定义-->补充“;HAVE_REMOTE

技术分享



以上是关于Microsoft Visual Studio 10.0执行WinPcap获取网络设配器的代码的主要内容,如果未能解决你的问题,请参考以下文章

怎么用microsoft visual studio制作一个选择题

microsoft visual studio软件怎样把游戏导出来

microsoft visual c++里的编译在哪里?

microsoft visual studio 2008找不到一个或多个组件,请重新安装应用程序 的原因都有哪些?

Microsoft Visual C++与Visual Studio的区别是啥?

Microsoft Visual Studio正在等待操作完成