GetMouseMovePointsEx

マウスまたはペンの直近最大 64 個の座標履歴を取得する。

GetMouseMovePointsEx cbSize, lppt, lpptBuf, nBufPoints, resolution

cbSize : [int] 型: UINT MOUSEMOVEPOINT 構造体のバイト単位のサイズ。
lppt : [var] 型: LPMOUSEMOVEPOINT 有効なマウス座標(画面座標)を含む MOUSEMOVEPOINT 構造体へのポインタ。タイムスタンプを含めてもよい。GetMouseMovePointsEx は指定点をマウス座標履歴から検索する。見つかった場合、その点を含む直前までの nBufPoints 個の点を返す。アプリケーションがタイムスタンプを与えると、同じ座標だが記録時刻が異なる 2 点を区別するのに使用される。アプリケーションは WM_MOUSEMOVE メッセージで受け取ったマウス座標を画面座標に変換してから本関数を呼び出すべきである。
lpptBuf : [var] 型: LPMOUSEMOVEPOINT 取得した点を受け取るバッファへのポインタ。少なくとも cbSize * nBufPoints のサイズが必要である。
nBufPoints : [int] 型: int 取得する点の個数。
resolution : [int] 型: DWORD

(プラグイン / モジュール : user32.dll)

解説

マウスまたはペンの直近最大 64 個の座標履歴を取得する。

[戻り値]
型: int 関数が成功した場合、戻り値はバッファ内の点の個数である。それ以外の場合は -1 を返す。拡張エラー情報については
GetLastError を呼ぶ。

[備考]
システムは直近の 64 個のマウス座標とそのタイムスタンプを保持している。アプリケーションがマウス座標を
GetMouseMovePointsEx
に渡し、その座標がシステムのマウス座標履歴に存在すれば、関数は指定個数の座標を履歴から取得する。タイムスタンプを与えれば、履歴内の同一点を区別するために使用される。GetMouseMovePointsEx
は、呼び出しスレッドだけでなく他のスレッドにも最終的にディスパッチされた点を返す。次の場合 GetMouseMovePointsEx
は失敗するか誤った値を返すことがある。
(以下省略)

情報

プラグイン / モジュールuser32.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の user32.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_user32_gen2.hs