FwpmProviderAdd0 函数 (fwpmu.h)

FwpmProviderAdd0 函数向系统添加新的提供程序。

语法

DWORD FwpmProviderAdd0(
  [in]           HANDLE               engineHandle,
  [in]           const FWPM_PROVIDER0 *provider,
  [in, optional] PSECURITY_DESCRIPTOR sd
);

参数

[in] engineHandle

类型: HANDLE

筛选器引擎的打开会话的句柄。 调用 FwpmEngineOpen0 以打开与筛选器引擎的会话。

[in] provider

类型: FWPM_PROVIDER0*

要添加的提供程序对象。

[in, optional] sd

类型: PSECURITY_DESCRIPTOR

提供程序对象的安全信息。

返回值

类型:DWORD

返回代码/值 说明
ERROR_SUCCESS
0
已成功添加提供程序。
FWP_E_* 错误代码
0x80320001— 0x80320039
Windows 筛选平台 (WFP) 特定错误。 有关详细信息 ,请参阅 WFP 错误代码
RPC_* 错误代码
0x80010001 — 0x80010122
无法与远程或本地防火墙引擎通信。

注解

如果调用方提供 null 安全描述符,系统将分配默认安全描述符。

启动时对象在 TCP/IP 驱动程序启动时添加到基本筛选引擎 (BFE) ,并在 BFE 完成初始化后删除。 在 BFE 启动时添加永久性对象。 如果策略提供程序具有在禁用其关联服务时不打算强制执行的持久策略,则调用方可以在 FWPM_PROVIDER0 结构中指定可选服务名称。 然后,此服务拥有永久性策略对象。 开始时,BFE 仅将以下类型的永久性对象添加到系统。

  • 对象不与提供程序关联。
  • 对象具有未指定服务名称的关联提供程序。
  • 对象具有关联的提供程序和关联的服务设置为自动启动。
不能从只读事务中调用此函数。 它将失败并 FWP_E_INCOMPATIBLE_TXN。 有关事务的详细信息,请参阅 对象管理

调用方需要 FWPM_ACTRL_ADD 访问提供程序的容器。 有关详细信息,请参阅访问控制

FwpmProviderAdd0 是 FwpmProviderAdd 的特定实现。 有关详细信息 ,请参阅 WFP Version-Independent 名称和面向特定版本的 Windows

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 fwpmu.h
Library Fwpuclnt.lib
DLL Fwpuclnt.dll

另请参阅

FWPM_PROVIDER0