C++ 是否可以在WFP(Windows过滤平台)中实现用户模式调用?

C++ 是否可以在WFP(Windows过滤平台)中实现用户模式调用?,c++,filter,wfp,C++,Filter,Wfp,是否可以在WFP(Windows过滤平台)中实现用户模式调用?如果是,请分享一些相关链接或示例代码。来自: 用户模式与内核模式的对比 如果所需的过滤可以通过使用标准过滤完成 内置于Windows筛选平台的功能, 独立软件供应商(ISV)应编写用户模式管理 应用程序来配置过滤器引擎,而不是编写 内核模式调用驱动程序。内核模式调用驱动程序只应 当您必须以无法使用的方式处理网络数据时,写入 由标准的内置过滤功能处理。对于 有关如何编写用户模式Windows筛选平台的信息 管理应用程序,请参阅Windo

是否可以在WFP(Windows过滤平台)中实现用户模式调用?如果是,请分享一些相关链接或示例代码。

来自:

用户模式与内核模式的对比

如果所需的过滤可以通过使用标准过滤完成 内置于Windows筛选平台的功能, 独立软件供应商(ISV)应编写用户模式管理 应用程序来配置过滤器引擎,而不是编写 内核模式调用驱动程序。内核模式调用驱动程序只应 当您必须以无法使用的方式处理网络数据时,写入 由标准的内置过滤功能处理。对于 有关如何编写用户模式Windows筛选平台的信息 管理应用程序,请参阅Windows筛选平台 Microsoft Windows SDK中的文档


不,现在不可能。尽管大多数Windows筛选平台(WFP)API在用户模式下可用,但当您尝试注册调用时,您会被此API调用的版本绊倒:

FwpsCalloutRegister3(
   _Inout_ void* deviceObject,
   _In_ const FWPS_CALLOUT3* callout,
   _Out_opt_ UINT32* calloutId
   );
这是向WFP注册classify/notify函数的唯一方法,如果您不是内核设备驱动程序,那么您将不会有
deviceObject
传递到此API调用