问题解决:缺少“;”(在标识符“PhysicalMediumType”的前面)

源代码如下:
typedef struct _MIB_IF_ROW2 {
//
// Key structure. Sorted by preference.
//
NET_LUID InterfaceLuid;
NET_IFINDEX InterfaceIndex;

//
// Read-Only fields.
//
GUID InterfaceGuid;
WCHAR Alias[IF_MAX_STRING_SIZE + 1];
WCHAR Description[IF_MAX_STRING_SIZE + 1];
ULONG PhysicalAddressLength;
UCHAR PhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH];
UCHAR PermanentPhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH];

ULONG Mtu;
IFTYPE Type; // Interface Type.
TUNNEL_TYPE TunnelType; // Tunnel Type, if Type = IF_TUNNEL.
NDIS_MEDIUM MediaType;
NDIS_PHYSICAL_MEDIUM PhysicalMediumType;
NET_IF_ACCESS_TYPE AccessType;
NET_IF_DIRECTION_TYPE DirectionType;

然后提示说error C2146: 语法错误 : 缺少“;”(在标识符“PhysicalMediumType”的前面)
error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
这个文件是怎么来的?我并没有定义它啊 还有这个错误是怎么改呢?

我用的是vs2008
希望大侠们不吝赐教 这里先谢谢了

另外,只有帮我解决到问题才给分,如果只是在别的地方转过来的话,我想大可不必了。

第1个回答  2013-03-21
把netioapi.h里的#include <ntddndis.h>改为#include "ntddndis.h"后就能通过编译了
第2个回答  2009-06-13
请确认NDIS_PHYSICAL_MEDIUM这个宏已被正确定义且被正确使用。本回答被网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网