FltPropagateActivityIdToThread 函数 (fltkernel.h)

FltPropagateActivityIdToThread 例程将微型筛选器回调数据的 IRP 中的活动 ID 与当前线程相关联。

语法

NTSTATUS FLTAPI FltPropagateActivityIdToThread(
  [in]     PFLT_CALLBACK_DATA CallbackData,
  [in/out] LPGUID             PropagateId,
  [out]    LPCGUID            *OriginalId
);

参数

[in] CallbackData

指向包含具有关联活动 ID 的请求的回调数据的指针。

[in/out] PropagateId

指向调用方分配的 GUID 的指针,该 GUID 存储当前线程的活动 ID。

[out] OriginalId

返回时,OriginalId 引用的 GUID 指针指向以前为线程设置的活动 ID。

返回值

FltPropagateActivityIdToThread 返回以下 NTSTATUS 值之一。

返回代码 说明
STATUS_NOT_SUPPORTED 回调数据不包含 IRP 操作的请求。
STATUS_NOT_FOUND CallbackData 中,没有任何活动 ID 与请求相关联。
STATUS_SUCCESS 活动 ID 在 OriginalId 指向的 GUID 值中返回。

备注

跟踪感知微型筛选器使用 FltPropagateActivityIdToThread 例程。 微型筛选器使用此例程将活动 ID 从 IRP 附加到处理请求的工作线程 I/O。

如果对 FltPropagateActivityIdToThread 的调用成功,微型筛选器必须在 OriginalId 中使用 OriginalId 中的指针调用 IoClearActivityIdThread,然后才能从工作线程返回控件。

要求

   
最低受支持的客户端 从Windows 8开始可用。
目标平台 通用
标头 fltkernel.h (包括 Fltkernel.h)
Library FltMgr.lib
DLL Fltmgr.sys
IRQL <= DISPATCH_LEVEL

另请参阅

FltGetActivityIdCallbackData

FltSetActivityIdCallbackData