在vs2010中配置Winpcap

好久没来csdn了。

最近准备学习一下网络抓包方面的东西,但在vc6.0下Winpcap总是配置不成功,今天在网上找到一个在VS2010中配置的,话说这会儿我已经配置并测试成功了。如下:

VS2010 配置Winpcap

新建一个项目,GetDevs.cpp。用来测试。测试代码最后有给出。

View->Property Manager

Debug|Win32 -> Mircrosoft.Cpp.Win32.user(右键)->Properties

注:此处设置为全局的!

q 设置环境目录

VC++ Directiories -> Include DirectoriesLibrary Directories中添加路径。

假如将wpdpack放到c盘。则:

Include Directories:c:\wpdpack\Include;

Library Directories:c:\wpdpack\Lib;

分号不要漏!

q 设置编译条件

C/C++Preprocessor(预处理器)的Preprocessor Definitions(预处理定义)

添加 ;WPCAP;HAVE_REMOTE;

注意分号,每个预定义符用“;”分开。

Linker(连接器)下的Command Line(命令行)

Additional Options (附加项)中输入:

wpcap.lib ws2_32.lib packet.lib(注:用空格分隔。)

确定即可。

Ctrl + F5运行。显示出网卡驱动信息。表明配置成功。

代码GetDevs.cpp

#include "pcap.h" 

void  main() 

 { 

   pcap_if_t *alldevs,*d; 

   int i=0; 

   char errbuf[PCAP_ERRBUF_SIZE];

   /* PCAP_ERRBUF_SIZE =256ê?¨²pcap.hD¡§°? */             

    

    if (pcap_findalldevs(&alldevs, errbuf) == -1) /* a?API®?¤¡ä?Ì?ª?¡§Ì?¢DÀ¨ª */

     {  fprintf(stderr,"Error in pcap_findalldevs: %s\n", errbuf); 

//errbuf?ºyê?Ì¡À®D°¨¬¡ê¨¦?¤¡é¦¨²º¡Àê?a??ºy¨¢À?PCAP¬??a3?¬?¡§Ì?䨪¨®Á?ä?

        return

     }  

     

  /* ?º?¢DÀ¨ªÌ?¨¬®|Á??Ì?¨²¨Y */ 

       for(d=alldevs;d;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

   } 

  

   /*We don't need any more the device list. Free it */ 

       pcap_freealldevs(alldevs); //º¨ª¤?Ì?¨²ä?Á¨º¡ä

  }

如有错误的地方,请指出。

大家一起学习探讨。呵呵!

此为原创。

谢谢~~

boyzxh

Email[email protected]  


你可能感兴趣的:(Studio,Visual,2010,winpcap)