public static extern int GetMessage(out Message lpMsg, IntPtr hwnd, uint wMsgFilterMin, uint wMsgFilterMax);
public static extern IntPtr DispatchMessage([In] ref Message lpMsg);
public static extern bool TranslateMessage([In] ref Message lpMsg);
public static extern bool PeekMessage(out Message lpMsg, IntPtr hWnd, uint wMsgFilterMin, uint wMsgFilterMax, uint wRemoveMsg);