我下载的winpcap3.1版本
想用mfc做网络开发~
--------------------
我按照帖子
http://blog.csdn.net/xmagicx/archive/2004/09/24/114991.aspx
方法添加头文件
#include "Packet32.h"
#include "DEVIOCTL.H"
#pragma comment(lib,"Packet.lib")可以编译程序以后出现错误,错误信息如下:
--------------------Configuration: Get_Net_Data - Win32 Debug--------------------
Compiling...
Get_Net_DataDlg.cpp
c:\program files\microsoft visual studio\vc98\include\winsock2.h(99) : error C2011: 'fd_set' : 'struct' type redefinition
c:\program files\microsoft visual studio\vc98\include\winsock2.h(134) : warning C4005: 'FD_SET' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\winsock.h(83) : see previous definition of 'FD_SET'
c:\program files\microsoft visual studio\vc98\include\winsock2.h(143) : error C2011: 'timeval' : 'struct' type redefinition
c:\program files\microsoft visual studio\vc98\include\winsock2.h(199) : error C2011: 'hostent' : 'struct' type redefinition
c:\program files\microsoft visual studio\vc98\include\winsock2.h(212) : error C2011: 'netent' : 'struct' type redefinition
c:\program files\microsoft visual studio\vc98\include\winsock2.h(219) : error C2011: 'servent' : 'struct' type redefinition
c:\program files\microsoft visual studio\vc98\include\winsock2.h(226) : error C2011: 'protoent' : 'struct' type redefinition
c:\program files\microsoft visual studio\vc98\include\winsock2.h(310) : error C2011: 'in_addr' : 'struct' type redefinition
c:\program files\microsoft visual studio\vc98\include\winsock2.h(368) : error C2011: 'sockaddr_in' : 'struct' type redefinition
c:\program files\microsoft visual studio\vc98\include\winsock2.h(378) : error C2011: 'WSAData' : 'struct' type redefinition
c:\program files\microsoft visual studio\vc98\include\winsock2.h(430) : warning C4005: 'SO_DONTLINGER' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\winsock.h(391) : see 
.......................
......................
错误信息全部是结构跟宏重定义,全部是winsock2.h请问这个问题怎么解决?谢谢

解决方案 »

  1.   

    ?
    zenme mei ren hui da a
      

  2.   

    可能是同时include了"winsock.h"和"winsock2.h"
    检查一下
      

  3.   

    没看见啊,晕倒,我就加了那个头文件就出错,不加就没问题
    我看了,加
    £include "pcap.h"
    也是那样错误
    郁闷~
      

  4.   

    恩,我现在只应用了一个pcap.h,出错如故
    没有其他设计sock的头文件了
    我就是在一个空壳程序上面加了include <pcap.h>
    就出现上面的错误
    我在link里面的object/libarymoudle里面加入了wpcap.lib,wsock32.lib
    我看我的vc98\inlcude\里面有winsock.h与winsock2.h两个文件,是不是可以删除一个什么的啊
    我不懂这块啊
    还请帮帮忙啊~
      

  5.   

    为什么调整一下头文件就可以了啊??
    谢谢勇敢的心,但是还请指导为什么?
    ------------#include <pcap.h>
    #include "stdafx.h"
    #include "Get_Net_Data.h"
    #include "Get_Net_DataDlg.h"
    -----------
    上面的顺序就编译没错
    可是下面的编译就错了,为什么?
    --------------#include "stdafx.h"
    #include "Get_Net_Data.h"
    #include "Get_Net_DataDlg.h"
    #include <pcap.h>
    -------------------
    这个错在哪儿?
      

  6.   

    你的mfc可能已经选择支持socket模式,把相应的由mfc wizard自动添上去的头文件(winsock.h之类的)去掉就行了.我以前也遇到过类似的问题,删掉后就应该可以了
      

  7.   

    rabbitweng(wsq) 
    谢谢,真的这样
    resource.h里面有这个语句
    #include <afxsock.h> // MFC socket extensions
    所以重复了,谢谢二位