C # - PInvokeStackImbalance обнаружен на хорошо документированной функции?

Вот мой код для функции ClickMouse ():

    [DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]
    public static extern void mouse_event(long dwFlags, long dx, long dy, long cButtons, long dwExtraInfo);


    private const long MOUSEEVENTF_LEFTDOWN = 0x02;
    private const long MOUSEEVENTF_LEFTUP = 0x04;
    private const long MOUSEEVENTF_RIGHTDOWN = 0x08;
    private const long MOUSEEVENTF_RIGHTUP = 0x10;
    private void ClickMouse()
    {
        long X = Cursor.Position.X;
        long Y = Cursor.Position.Y;
        mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, X, Y, 0, 0);

    }

По какой-то причине, когда моя программа приходит к этому коду, она выдает это сообщение об ошибке:

Обнаружен PInvokeStackImbalance Сообщение. При вызове функции PInvoke «WindowsFormsApplication1! WindowsFormsApplication1.Form1 :: mouse_event» разбалансирован стек. Это вероятно потому, что управляемая подпись PInvoke не совпадает с неуправляемой целевой подписью. Убедитесь, что соглашение о вызовах и параметры подписи PInvoke соответствуют целевой неуправляемой подписи.

Пожалуйста помоги?

Ответы на вопрос(5)

Ваш ответ на вопрос