GetGestureInfo仅在发布模式下返回ERROR_INVALID_PARAMETER

时间:2014-03-15 13:54:14

标签: c++ winapi windows-8 touch gestures

我有以下WM_GESTURE处理代码:

    case WM_GESTURE:
    {
        GESTUREINFO gi;

        ZeroMemory(&gi, sizeof(gi));

        gi.cbSize = sizeof(gi);

        BOOL bResult = GetGestureInfo((HGESTUREINFO)lParam, &gi);
        BOOL bHandled = FALSE;

        if (bResult){
            // Gesture processing code is here, but it never gets here in release mode
        }
        else{
            DWORD dwErr = GetLastError();
            // Here it returns 87 in release mode
        }

        CloseGestureInfoHandle((HGESTUREINFO)lParam);

手势处理在调试模式下工作100%,但在发布模式下中断 - GetGestureInfo返回false,后续GetLastError调用返回87(ERROR_INVALID_PARAMETER)。

Documentation说这可能是因为没有正确设置gi.cbSize,但这似乎并非如此。

为什么?

0 个答案:

没有答案