public static extern bool PeekMessage(out NativeMessage message, IntPtr hwnd, uint messageFilterMin, uint messageFilterMax, uint flags);
public static extern bool TranslateMessage(ref NativeMessage message);
public static extern bool DispatchMessage(ref NativeMessage message);
public static extern UInt32 DispatchMessage(ref NativeMessage lpMsg);
public static extern bool TranslateMessage(ref NativeMessage lpMsg);
public static extern bool PeekMessage(out NativeMessage lpMsg, IntPtr hWnd, UInt32 wMsgFilterMin, UInt32 wMsgFilterMax, UInt32 wRemoveMsg);