FwpmProviderContextAdd2 函数 (fwpmk.h)
FwpmProviderContextAdd2 函数向系统添加新的提供程序上下文。
语法
NTSTATUS FwpmProviderContextAdd2(
[in] HANDLE engineHandle,
[in] const FWPM_PROVIDER_CONTEXT2 *providerContext,
[in, optional] PSECURITY_DESCRIPTOR sd,
[out, optional] UINT64 *id
);
参数
[in] engineHandle
筛选引擎打开的会话句柄。 调用 FwpmEngineOpen0 以打开筛选器引擎的会话。
[in] providerContext
要添加的提供程序上下文对象。
[in, optional] sd
与提供程序上下文对象关联的安全信息。
[out, optional] id
指向接收此提供程序上下文的运行时标识符的变量的指针。
返回值
返回代码/值 | 描述 |
---|---|
ERROR_SUCCESS 0 |
已成功添加提供程序上下文。 |
ERROR_NOT_SUPPORTED 0x32 |
authenticationMethods 数组中的 FWPM_IPSEC_IKE_MM_CONTEXT和 IKEEXT_IPV6_CGA 身份验证方法,但在注册表中未启用加密生成的地址(CGA)。 |
FWP_E_* 错误代码 0x80320001 — 0x80320039 |
Windows 筛选平台(WFP)特定错误。 有关详细信息,请参阅 WFP 错误代码。 |
RPC_* 错误代码 0x80010001 — 0x80010122 |
无法与远程或本地防火墙引擎通信。 |
其他 NTSTATUS 代码 | 发生错误。 |
言论
FWPM_PROVIDER_CONTEXT2 结构中的某些字段由系统分配,而不是调用方,在调用 FwpmProviderContextAdd2中将被忽略。
如果调用方提供 NULL 安全描述符,系统将分配默认的安全描述符。
不能从只读事务中调用此函数,它失败并 FWP_E_INCOMPATIBLE_TXN。 有关事务的详细信息,请参阅 对象管理。
调用方需要 FWPM_ACTRL_ADD 访问提供程序上下文的容器,并 FWPM_ACTRL_ADD_LINK 访问提供程序(如果有)。 有关详细信息,请参阅 访问控制。
FwpmProviderContextAdd0 是 FwpmProviderContextAdd的特定实现。 有关详细信息,请参阅 WFP Version-Independent 名称和面向特定版本的 Windows。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows Vista 开始可用。 |
目标平台 | 普遍 |
标头 | fwpmk.h |
库 | fwpkclnt.lib |
IRQL | <= PASSIVE_LEVEL |