FwpmProviderContextAdd1 函数 (fwpmu.h)

FwpmProviderContextAdd1 函数向系统添加新的提供程序上下文。

注意FwpmProviderContextAdd1 是 Windows 7 中使用的 FwpmProviderContextAdd 的特定实现。 有关详细信息 ,请参阅 WFP Version-Independent 名称和面向特定版本的 Windows 。 对于Windows 8,可以使用 FwpmProviderContextAdd2。 对于 Windows Vista,FwpmProviderContextAdd0 可用。

 

语法

DWORD FwpmProviderContextAdd1(
  [in]            HANDLE                       engineHandle,
  [in]            const FWPM_PROVIDER_CONTEXT1 *providerContext,
  [in, optional]  PSECURITY_DESCRIPTOR         sd,
  [out, optional] UINT64                       *id
);

参数

[in] engineHandle

类型: HANDLE

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

[in] providerContext

类型: FWPM_PROVIDER_CONTEXT1*

要添加的提供程序上下文对象。

[in, optional] sd

类型: PSECURITY_DESCRIPTOR

与提供程序上下文对象关联的安全信息。

[out, optional] id

类型: UINT64*

指向接收此提供程序上下文的运行时标识符的变量的指针。

返回值

类型:DWORD

返回代码/值 说明
ERROR_SUCCESS
0
已成功添加提供程序上下文。
ERROR_NOT_SUPPORTED
0x32
[IKEEXT_IPV6_CGA] (authenticationMethods 数组中的 /windows/desktop/api/iketypes/ne-iketypes-ikeext_authentication_method_type) 身份验证方法,但在注册表中未启用加密生成的地址 (CGA) 。
FWP_E_* 错误代码
0x80320001— 0x80320039
Windows 筛选平台 (WFP) 特定错误。 有关详细信息 ,请参阅 WFP 错误代码
RPC_* 错误代码
0x80010001 — 0x80010122
无法与远程或本地防火墙引擎通信。

注解

FWPM_PROVIDER_CONTEXT1 结构中的某些字段由系统而不是调用方分配,并在调用 FwpmProviderContextAdd1 时被忽略。

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

不能从只读事务中调用此函数。 它将失败并 FWP_E_INCOMPATIBLE_TXN。 有关事务的详细信息,请参阅 对象管理

调用方需要 FWPM_ACTRL_ADD 访问提供程序上下文的容器,并 FWPM_ACTRL_ADD_LINK 访问提供程序 ((如果有任何) )。 有关详细信息,请参阅访问控制

要求

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

另请参阅

FWPM_PROVIDER_CONTEXT1