다음을 통해 공유


SkipPointerFrameMessages 함수(winuser.h)

지정된 포인터에 대해 가장 최근에 검색된 메시지를 생성한 포인터 입력 프레임을 결정하고 동일한 포인터 입력 프레임에서 생성된 큐에 대기(시도되지 않은) 포인터 입력 메시지를 삭제합니다. 애플리케이션이 GetPointerFrameInfo 함수, GetPointerFrameInfoHistory 함수 또는 형식별 변형 중 하나를 사용하여 전체 프레임에 대한 정보를 검색한 경우 이 함수를 사용하여 해당 프레임에서 남은 메시지를 하나씩 검색하고 삭제하지 않도록 방지할 수 있습니다.

구문

BOOL SkipPointerFrameMessages(
  [in] UINT32 pointerId
);

매개 변수

[in] pointerId

포인터의 식별자입니다. 이 포인터에 대해 가장 최근에 검색된 입력을 포함하는 프레임에 대해 보류 중인 메시지를 건너뜁히게 됩니다.

반환 값

함수가 성공하면 반환 값은 0이 아닙니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

병렬 모드 디바이스는 프레임에서 포인터 입력을 보고할 수 있습니다. 즉, 단일 입력 보고서에서 해당 디바이스의 모든 포인터의 상태와 위치를 시스템에 보고할 수 있습니다. 애플리케이션별 요구 사항이 달리 지시하지 않는 한 애플리케이션은 전체 프레임을 단일 입력으로 보는 것이 가장 좋습니다.

SkipPointerFrameMessages 함수는 GetPointerFrameInfo 함수(또는 형식별 변형 중 하나)와 함께 사용하여 전체 프레임을 단일 입력으로 사용할 수 있습니다.

애플리케이션에서 포인터 메시지를 볼 때 GetPointerFrameInfo 함수를 사용하여 포인터 메시지가 속한 전체 포인터 입력 프레임을 검색할 수 있으므로 현재 창이 소유한 모든 포인터의 업데이트된 보기를 얻을 수 있습니다. 반환된 프레임에는 지정된 포인터와 동일한 창에서 현재 소유하고 있는 포인터만 포함됩니다.

전체 정보 프레임을 검색한 후 애플리케이션은 SkipPointerFrameMessages 함수를 호출하여 검색 보류 중인 이 프레임과 연결된 나머지 포인터 메시지를 건너뛸 수 있습니다. 이렇게 하면 나머지 메시지를 하나씩 검색하고 처리하는 오버헤드가 애플리케이션에 저장됩니다.

경고SkipPointerFrameMessages 함수는 호출자가 호출자의 스레드에 있는 다른 엔터티(예: 직접 조작)가 보류 중인 포인터 메시지를 검색할 것으로 예상되는 경우에만 사용해야 합니다. 이러한 이유로 SkipPointerFrameMessages는 여러 동시 상호 작용을 처리할 때 직접 조작과 함께 사용하면 안 됩니다.
 
검색된 정보는 호출 스레드에서 가장 최근에 검색한 포인터 프레임과 연결됩니다. 호출 스레드가 다음 메시지를 검색하면 이전 포인터 프레임과 연결된 정보를 더 이상 사용할 수 없습니다.

포인터 프레임에 지정된 포인터 외에 추가 포인터가 없으면 이 함수는 아무 작업도 수행하지 않고 성공합니다.

호출 스레드가 포인터 메시지가 전달된 창을 소유하지 않으면 마지막 오류가 ERROR_ACCESS_DENIED 설정되어 이 함수가 실패합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2012 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winuser.h(Windows.h 포함)
라이브러리 User32.lib
DLL User32.dll

참조

함수