在wfp开发是遇到
FwpmEngineOpen0无法解析;NET_BUFFER_LIST未定义
在链接器->输入 的附加依赖项中加入如下lib,自己项目需要什么就加什么
$(DDK_LIB_PATH)\NTOSKrnl.lib;$(DDK_LIB_PATH)\FwpKClnt.lib;$(DDK_LIB_PATH)\NetIO.lib;$(DDK_LIB_PATH)\NDIS.lib;$(DDK_LIB_PATH)\WDMSec.lib;$(SDK_LIB_PATH)\UUID.lib;
定义的NDIS和系统版本关系
// Legal values include:
// 6.0 Available starting with Windows Vista RTM
// 6.1 Available starting with Windows Vista SP1 / Windows Server 2008
// 6.20 Available starting with Windows 7 / Windows Server 2008 R2
// 6.30 Available starting with Windows 8 / Windows Server "8"
#define FILTER_MAJOR_NDIS_VERSION 6
#if defined(NDIS60)
#define FILTER_MINOR_NDIS_VERSION 0
#elseif defined(NDIS620)
#define FILTER_MINOR_NDIS_VERSION 20
#elseif defined(NDIS630)
#define FILTER_MINOR_NDIS_VERSION 30
#endif
NET_BUFFER_LIST未定义时,需要定义NDIS版本,可以参考ndis.h
在编译器的c/c++ ->预处理器中添加 NDIS61
另外注意Unload时进行相关处理。不然就会
DRIVER_UNLOADED_WITHOUT_CANCELLING_PENDING_OPERATIONS