次の方法で共有


GetPointerInfoHistory 関数 (winuser.h)

指定したポインターの現在のメッセージに結合された個々の入力に関連付けられた情報 (存在する場合) を取得します。 最新の入力は返された履歴に含まれ、 GetPointerInfo 関数によって返される最新の入力と同じです。

構文

BOOL GetPointerInfoHistory(
  [in]            UINT32       pointerId,
  [in, out]       UINT32       *entriesCount,
  [out, optional] POINTER_INFO *pointerInfo
);

パラメーター

[in] pointerId

情報を取得するポインターの識別子。

[in, out] entriesCount

pointerInfo が指すバッファー内の構造体の数を指定する変数へのポインター。 GetPointerInfoHistory が成功した場合、entriesCount は使用可能な構造体の合計数で更新されます。 使用可能な構造体の合計数は、GetPointerInfo の呼び出しによって返されるPOINTER_INFO構造体の historyCount フィールドと同じです。

[out, optional] pointerInfo

ポインター情報を受信 するPOINTER_INFO 構造体の配列のアドレス。 *entriesCount が 0 の場合、このパラメーターは NULL にすることができます。

戻り値

関数が成功した場合、戻り値は 0 以外です。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

アプリケーションがポインター入力メッセージを生成ほど速く処理しない場合は、一部の移動が結合される可能性があります。 アプリケーションは、結合可能なポインター メッセージを受信すると、 GetPointerInfoHistory 関数を使用して、メッセージに結合されたすべての個々の入力 (存在する場合) の情報を取得できます。 取得された情報は、呼び出し元のスレッドによって最後に取得されたポインター メッセージに関連付けられていることに注意してください。 呼び出し元のスレッドが次のメッセージを取得すると、前のメッセージに関連付けられた情報が使用できなくなる可能性があります。

取得された情報は、逆の時系列順に表示され、返される配列の最初の行に最新のエントリが表示されます。 最新のエントリは、 GetPointerInfo 関数によって返されるエントリと同じです。

指定されたバッファー内の行数が、使用可能なすべての履歴エントリを保持するのに不十分な場合、この関数は、最新のエントリを含むバッファーと、使用可能なエントリの合計数を含む *entriesCount で成功します。

ポインター フレームに、指定したポインター以外に追加のポインターが含まれない場合、この関数は成功し、指定されたポインターの情報のみを返します。

ポインター フレームに関連付けられている情報が使用できなくなった場合、この関数は最後のエラーが ERROR_NO_DATA に設定されて失敗します。

呼び出し元のスレッドが、ポインター メッセージが配信されたウィンドウ (入力が最初に配信されたウィンドウ、またはメッセージが転送された場所) を所有していない場合、この関数は最後のエラーを ERROR_ACCESS_DENIED に設定して失敗します。

要件

要件
サポートされている最小のクライアント Windows 8 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winuser.h (Windows.h を含む)
Library User32.lib
[DLL] User32.dll

関連項目

関数

GetPointerFrameInfo

GetPointerFrameInfoHistory

GetPointerInfo