SetEvent (coredll)
Last changed: -65.196.52.166

.
Summary
TODO - a short description

C# Signature:

using HANDLE = System.IntPtr;
...
[DllImport("coredll.dll", SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool EventModify(HANDLE hEvent, [In, MarshalAs(UnmanagedType.U4)] int dEvent);
public enum EventFlags
{
     PULSE = 1,
     RESET = 2,
     SET = 3
}
private static bool SetEvent(HANDLE hEvent)
{
     return EventModify(hEvent, (int)EventFlags.SET);
}

User-Defined Types:

None.

Alternative Managed API:

Set() method of <EventWaitHandle> class.

Notes:

See EventModify

Tips & Tricks:

Please add some!

Sample Code:

using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
using HANDLE = System.IntPtr;

namespace Test
{
     class Program
     {
        [DllImport("coredll.dll", SetLastError = true, CallingConvention = CallingConvention.Winapi, CharSet = CharSet.Auto)]
        public static extern HANDLE CreateEvent(HANDLE lpEventAttributes, [In, MarshalAs(UnmanagedType.Bool)] bool bManualReset, [In, MarshalAs(UnmanagedType.Bool)] bool bIntialState, [In, MarshalAs(UnmanagedType.BStr)] string lpName);

        [DllImport("coredll.dll", SetLastError = true, CallingConvention = CallingConvention.Winapi, CharSet = CharSet.Auto)]
        [return: MarshalAs(UnmanagedType.Bool)]
        public static extern bool CloseHandle(HANDLE hObject);

        [DllImport("coredll.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        public static extern bool EventModify(HANDLE hEvent, [In, MarshalAs(UnmanagedType.U4)] int dEvent);

        public enum EventFlags
        {
                PULSE = 1,
                RESET = 2,
                SET = 3
        }
        private static bool SetEvent(HANDLE hEvent)
        {
                return EventModify(hEvent, (int)EventFlags.SET);
        }
        private static bool ResetEvent(HANDLE hEvent)
        {
                return EventModify(hEvent, (int)EventFlags.RESET);
        }

        static void Main(string[] args)
        {
                IntPtr p = CreateEvent(HANDLE.Zero, false, true, null);
                SetEvent(p);
                ResetEvent(p);
                CloseHandle(p);
        }
     }
}


Documentation
SetEvent on MSDN