TdhEnumerateProviderFilters 函数 (tdh.h)

TdhEnumerateProviderFilters 函数枚举清单中定义的指定提供程序的筛选器。

语法

TDHSTATUS TdhEnumerateProviderFilters(
  [in]            LPGUID                Guid,
  [in]            ULONG                 TdhContextCount,
  [in, optional]  PTDH_CONTEXT          TdhContext,
  [in]            ULONG                 *FilterCount,
  [out, optional] PPROVIDER_FILTER_INFO *Buffer,
  [in, out]       ULONG                 *BufferSize
);

参数

[in] Guid

标识要检索其筛选器的提供程序的 GUID。

[in] TdhContextCount

未使用。

[in, optional] TdhContext

未使用。

[in] FilterCount

pBuffer 缓冲区包含的筛选器结构数。 如果 pBuffer 缓冲区不足,则为零。

[out, optional] Buffer

用户分配的用于接收筛选器信息的缓冲区。 有关详细信息,请参阅 PROVIDER_FILTER_INFO 结构。

[in, out] BufferSize

pBuffer 缓冲区的大小(以字节为单位)。 如果函数成功,此参数将接收所用缓冲区的大小。 如果缓冲区太小,该函数将返回ERROR_INSUFFICIENT_BUFFER并将此参数设置为所需的缓冲区大小。 如果输入时缓冲区大小为零,则缓冲区中不返回任何数据,并且此参数接收所需的缓冲区大小。

返回值

如果成功,则返回ERROR_SUCCESS。 否则,除了其他返回代码之外,此函数还返回以下返回代码之一。

返回代码 说明
ERROR_INSUFFICIENT_BUFFER
pBuffer 缓冲区的大小太小。 使用 pBufferSize 中设置的所需缓冲区大小来分配新缓冲区。
ERROR_NOT_FOUND
找不到事件的架构。
ERROR_INVALID_PARAMETER
一个或多个参数无效。
ERROR_FILE_NOT_FOUND
清单中的 resourceFileName 属性包含提供程序二进制文件的位置。 注册清单时,该位置将写入注册表。 TDH 无法根据注册的位置找到二进制文件。

注解

此函数使用 XML 清单来检索信息。

要求

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