etwUnregister 函数 (wdm.h)
EtwUnregister 函数取消注册事件提供程序,必须在提供程序退出之前调用该函数。
语法
NTSTATUS EtwUnregister(
[in] REGHANDLE RegHandle
);
参数
[in] RegHandle
指向提供程序注册句柄的指针,如果事件提供程序注册成功, EtwRegister 函数将返回该句柄。
返回值
如果事件提供程序已成功注销 ETW,EtwUnregister 函数将返回状态代码 STATUS_SUCCESS。
注解
跟踪完成后,驱动程序必须调用 EtwUnregister 函数才能注销提供程序。 每次调用 EtwRegister 时,都必须有对 EtwUnregister 的相应调用。 卸载进程时,未能注销事件提供程序可能会导致错误,因为与进程关联的回调不再有效。 不应在 EtwRegister 和 EtwUnregister 函数绑定的代码之外进行跟踪调用。 为了获得最佳性能,可以在 DriverEntry 例程中调用 EtwRegister 函数,在 DriverUnload 例程中调用 EtwUnregister 函数。
EtwRegister 的调用方必须在系统线程上下文中的 IRQL = PASSIVE_LEVEL 运行。
要求
要求 | 值 |
---|---|
目标平台 | 通用 |
标头 | wdm.h (包括 Wdm.h、Ntddk.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe;Ntdll.dll |
IRQL | PASSIVE_LEVEL |
DDI 符合性规则 | HwStorPortProhibitedDDI (storport) , PowerIrpDDis (wdm) |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈