public static extern bool PeekMessage(out MSG lpMsg, IntPtr hwnd, uint wMsgFilterMin, uint wMsgFilterMax, uint wRemoveMsg);
public static extern bool TranslateMessage(ref MSG lpMsg);
public static extern IntPtr DispatchMessage(ref MSG lpMsg);