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 将事件对象设置为“已信号”状态,并尝试满足尽可能多的等待。

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

要求

要求
最低受支持的客户端 Windows XP
目标平台 通用
标头 ntifs.h (包括 Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

另请参阅

IoCreateNotificationEvent

IoCreateSynchronizationEvent

KeClearEvent

KeResetEvent

KeSetEvent

KeWaitForSingleObject

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

ZwClose

ZwCreateEvent

ZwWaitForSingleObject