setTraceCallback 函数 (evntrace.h)

重要

请勿使用此函数;它在后续版本中可能不可用。 而是在 EventRecordCallback 函数中筛选事件跟踪类。

SetTraceCallback 函数指定一个 EventCallback 函数来处理指定事件跟踪类的事件。

语法

ULONG WMIAPI SetTraceCallback(
  [in] LPCGUID         pGuid,
  [in] PEVENT_CALLBACK EventCallback
);

参数

[in] pGuid

指向要接收其事件的事件跟踪类的类 GUID 的指针。 有关内核提供程序类 GUID 的列表,请参阅 NT 内核记录器常量

[in] EventCallback

指向 EventCallback 函数的指针,该函数用于处理属于事件跟踪类的事件。

返回值

如果函数成功,则返回值为 ERROR_SUCCESS。

如果函数失败,则返回值为 系统错误代码之一。 下面是一些常见错误及其原因。

  • ERROR_INVALID_PARAMETER

    下列情况之一存在:

    • pGuidNULL
    • EventCallbackNULL

注解

使用者调用此函数。

只能为事件跟踪类指定一个回调函数。 如果为事件跟踪类指定多个回调函数,则最后一个回调函数将接收该事件跟踪类的事件。

若要停止回调函数接收事件跟踪类的事件,请调用 RemoveTraceCallback 函数。 关闭跟踪时,回调会自动停止接收回调。

可以使用此函数接收使用 TraceEvent 函数之一写入的事件。 不能使用此函数来使用提供程序中的事件,该提供程序使用 EventWrite 函数之一来记录事件。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 evntrace.h
Library Windows 8.1 和 Windows Server 2012 R2 上的 Sechost.lib;Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista 和 Windows XP 上的 Advapi32.lib
DLL Windows 8.1 和 Windows Server 2012 R2 上的 Sechost.dll;Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista 和 Windows XP 上的 Advapi32.dll

另请参阅

EventCallback

ProcessTrace

RemoveTraceCallback