1>c:\program files\microsoft sdks\windows\v6.0a\include\netioapi.h(155) : error C2146: 语法错误 : 缺少“;”(在标识符“PhysicalMediumType”的前面)。
错误发生在 NDIS_PHYSICAL_MEDIUM PhysicalMediumType 这一句上。
网上有一些解析,说这是因为VS2008对ntddndis.h里头的定义比较新,WinPcap的头文件在对ntddndis.h的编译过后没有获得相应的定义,故NDIS_PHYSICAL_MEDIUM不是一个结构或类,所以就产生了缺少“;”这样奇怪的错误。
解决方法:
把netioapi.h里的#include <ntddndis.h>改为#include "ntddndis.h"后终于通过编译
【参考资料 感谢作者】
1、WinPcap初学(1)