Функция GetPointerTouchInfoHistory (winuser.h)
Возвращает информацию на основе сенсорного ввода, связанную с отдельными входными данными , если таковые имелись, которые были сгруппированы в текущее сообщение для указанного указателя (типа PT_TOUCH). Последние входные данные включаются в возвращаемый журнал и совпадают с последними входными данными, возвращенными функцией GetPointerTouchInfo .
Синтаксис
BOOL GetPointerTouchInfoHistory(
[in] UINT32 pointerId,
[in, out] UINT32 *entriesCount,
[out, optional] POINTER_TOUCH_INFO *touchInfo
);
Параметры
[in] pointerId
Идентификатор указателя, для которого извлекаются сведения.
[in, out] entriesCount
Указатель на переменную, указывающую количество структур в буфере, на которые указывает touchInfo. Если getPointerTouchInfoHistory завершается успешно, параметр entriesCount обновляется с учетом общего числа доступных структур. Общее количество доступных структур совпадает с полем historyCount в структуре POINTER_INFO , возвращаемой вызовом GetPointerInfo или GetPointerTouchInfo.
[out, optional] touchInfo
Адрес массива POINTER_TOUCH_INFO структур для получения сведений о указателе. Этот параметр может иметь значение NULL, если *entriesCount равно нулю.
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение не равно нулю.
Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Если приложение не обрабатывает входные сообщения указателя так быстро, как они создаются, некоторые перемещения могут быть объединены. Когда приложение получает объединенное сообщение указателя (типа PT_TOUCH), оно может использовать функцию GetPointerTouchInfoHistory для получения сведений обо всех отдельных входных данных, если таковые имелись, которые были объединяемы в сообщение. Обратите внимание, что полученные сведения связаны с сообщением указателя, которое последний раз было получено вызывающим потоком. Когда вызывающий поток получает следующее сообщение, сведения, связанные с предыдущим сообщением, могут быть недоступны.
Полученные сведения отображаются в обратном хронологическом порядке с последней записью в первой строке возвращаемого массива. Последняя запись совпадает с той, которая возвращается функцией GetPointerTouchInfo .
Если количество строк в предоставленном буфере недостаточно для хранения всех доступных записей журнала, эта функция завершается успешно с буфером, содержащим последние записи, и *entriesCount , содержащим общее количество доступных записей.
Если рамка указателя не содержит дополнительных указателей, кроме указанного указателя, эта функция выполняется успешно и возвращает только сведения для указанного указателя.
Если сведения, связанные с рамкой указателя, больше не доступны, эта функция завершается сбоем с последней ошибкой ERROR_NO_DATA.
Если вызывающий поток не владеет окном (в которое изначально были доставлены входные данные или куда было переадресовывалось сообщение), в которое было доставлено сообщение указателя, эта функция завершается сбоем с последней ошибкой ERROR_ACCESS_DENIED.
Если указанный указатель не имеет типа PT_TOUCH, эта функция завершается сбоем с последней ошибкой, заданной как ERROR_DATATYPE_MISMATCH.
Требования
Минимальная версия клиента | Windows 8 [только классические приложения] |
Минимальная версия сервера | Windows Server 2012 [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |