WSACreateEvent function (winsock2.h)

The WSACreateEvent function creates a new event object.

Syntax

WSAEVENT WSAAPI WSACreateEvent();

Return value

If no error occurs, WSACreateEvent returns the handle of the event object. Otherwise, the return value is WSA_INVALID_EVENT. To get extended error information, call WSAGetLastError.

Error code Meaning
WSANOTINITIALISED
A successful WSAStartup call must occur before using this function.
WSAENETDOWN
The network subsystem has failed.
WSAEINPROGRESS
A blocking Windows Sockets 1.1 call is in progress, or the service provider is still processing a callback function.
WSA_NOT_ENOUGH_MEMORY
Not enough free memory available to create the event object.

Remarks

The WSACreateEvent function creates a manual-reset event object with an initial state of nonsignaled. The handle of the event object returned cannot be inherited by child processes. The event object is unnamed.

The WSASetEvent function can be called to set the state of the event object to signaled. The WSAResetEvent function can be called to set the state of the event object to nonsignaled. When an event object is no longer needed, the WSACloseEvent function should be called to free the resources associated with the event object.

Windows Sockets 2 event objects are system objects in Windows environments. Therefore, if a Windows application wants to use an auto-reset event rather than a manual-reset event, the application can call the CreateEvent function directly. The scope of an event object is limited to the process in which it is created.

Windows Phone 8: This function is supported for Windows Phone Store apps on Windows Phone 8 and later.

Windows 8.1 and Windows Server 2012 R2: This function is supported for Windows Store apps on Windows 8.1, Windows Server 2012 R2, and later.

Requirements

Requirement Value
Minimum supported client Windows 8.1, Windows Vista [desktop apps | UWP apps]
Minimum supported server Windows Server 2003 [desktop apps | UWP apps]
Target Platform Windows
Header winsock2.h
Library Ws2_32.lib
DLL Ws2_32.dll

See also

CreateEvent

WSACloseEvent

WSAEnumNetworkEvents

WSAEventSelect

WSAGetOverlappedResult

WSARecv

WSARecvFrom

WSAResetEvent

WSASend

WSASendTo

WSASetEvent

WSAWaitForMultipleEvents

Winsock Functions

Winsock Reference