A version of this page is also available for

Windows Embedded CE 6.0 R3


This function sets the state of the specified event object to nonsignaled.


BOOL ResetEvent(
  HANDLE hEvent


  • hEvent
    [in] Handle to the event object, returned by the CreateEvent function.

Return Value

Nonzero indicates success. Zero indicates failure. To get extended error information, call GetLastError.


ResetEvent returns FALSE if the handle to the event object is invalid.

The state of an event object remains nonsignaled until it is explicitly set to signaled by the SetEvent or PulseEvent function. This nonsignaled state blocks the execution of any threads that have specified the event object in a call to one of the wait functions.

ResetEvent sets the event to the nonsignaled state even if the event was signaled multiple times before being signaled. The ResetEvent function is used primarily for manual signal event objects, which must be set explicitly to the nonsignaled state. Auto-signal event objects automatically change from signaled to nonsignaled after a single waiting thread is released.

Each object type, such as memory maps, semaphores, events, message queues, mutexes, and watchdog timers, has its own separate namespace. Empty strings, "", are handled as named objects. On Windows desktop-based platforms, synchronization objects all share the same namespace.


Header kfuncs.h
Library coredll.lib
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also


Synchronization Functions