ZwSetEvent 函数 (ntifs.h)

ZwSetEvent 例程将事件对象设置为信号状态,并尝试满足尽可能多的等待。

语法

NTSYSAPI NTSTATUS ZwSetEvent(
  [in]            HANDLE EventHandle,
  [out, optional] PLONG  PreviousState
);

参数

[in] EventHandle

事件对象的句柄。

[out, optional] PreviousState

指向变量的可选指针,其中事件对象的先前状态存储在输出中。

返回值

ZwSetEvent 返回STATUS_SUCCESS或适当的错误状态。 可能的错误状态代码包括:

返回代码 描述
STATUS_ACCESS_DENIED
调用方没有修改由 EventHandle 参数指定的事件所需的权限。
STATUS_INSUFFICIENT_RESOURCES
无法分配此函数所需的资源。
STATUS_INVALID_HANDLE
提供的 EventHandle 参数无效。

言论

ZwSetEvent 将事件对象设置为 Signaled 状态,并尝试满足尽可能多的等待。

注意 如果对 ZwSetEvent 函数的调用在用户模式下发生,则应使用名称“NtSetEvent”而不是“ZwSetEvent”。
 
对于内核模式驱动程序的调用,NtXxxZwXxx 版本的 Windows 本机系统服务例程的行为方式可能以不同的方式处理和解释输入参数。 有关 NtXxxZwXxx 例程之间的关系的详细信息,请参阅 使用 Nt 和 Zw 版本的本机系统服务例程

要求

要求 价值
最低支持的客户端 Windows XP
目标平台 普遍
标头 ntifs.h (include Ntifs.h)
NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

另请参阅

IoCreateNotificationEvent

IoCreateSynchronizationEvent

KeClearEvent

KeResetEvent

KeSetEvent

KeWaitForSingleObject

使用本机系统服务例程的 Nt 和 Zw 版本

ZwClose

ZwCreateEvent

ZwWaitForSingleObject