如果多平台网络驱动的时候,不可避免有些核心的结构是不同的,比方编译出现以下错误
'BindAdapterHandler' : is not a member of '_NDIS30_PROTOCOL_CHARACTERISTICS'
明显我的结构应该是_NDIS50_PROTOCOL_CHARACTERISTICS,
但是vc编译的时候无法识别(我喜欢quicksys的框架,新版0.3.0支持xpdkk的开发)
这个时候有两个解决方法,
参考ndis_hk你可以发现如下代码:
#if _WIN32_WINNT >= 0x0500
# define NDIS50 1
#else
# define NDIS40 1
#endif
#define BINARY_COMPATIBLE 0
我选择了修改编译器的参数部分 preprocessor defintions 写入ndis50就可以了
大家可能有疑问,怎么用build 的时候没问题呢?
看看sources你就知道它是怎么控制ndis版本了
小问题,希望给开发新手帮助!