TdhEnumerateManifestProviderEvents 函数 (tdh.h)

TdhEnumerateManifestProviderEvents 函数检索提供程序清单中存在的事件列表。

语法

TDHSTATUS TdhEnumerateManifestProviderEvents(
  [in]      LPGUID               ProviderGuid,
  [out]     PPROVIDER_EVENT_INFO Buffer,
  [in, out] ULONG                *BufferSize
);

参数

[in] ProviderGuid

标识要检索其事件列表的清单提供程序的 GUID。

[out] Buffer

用户分配的缓冲区,用于接收事件列表。 有关详细信息,请参阅 PROVIDER_EVENT_INFO 结构。

[in, out] BufferSize

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

返回值

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

返回代码 说明
ERROR_EMPTY
清单中没有为提供程序 GUID 定义事件。
ERROR_FILE_NOT_FOUND
找不到提供程序的元数据。
ERROR_INSUFFICIENT_BUFFER
ProviderInfo 缓冲区的大小太小。 使用 BufferSize 参数中设置的所需缓冲区大小来分配新缓冲区。
ERROR_INVALID_PARAMETER
一个或多个参数无效。
ERROR_NOT_FOUND
找不到提供的提供程序 GUID 的架构信息。

要求

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

另请参阅

EVENT_DESCRIPTOR

PROVIDER_EVENT_INFO

TdhGetManifestEventInformation