### 函数功能

该函数取得鼠标或画笔。

### 函数原型

int GetMouseMovePoints（UINT cbSize，LPMOUSEMOVEPOlNT lppt，LPMOUSEMOVEPOINT IpptBuf，int，nBufPoints，DWORD resolution）；

### 参数

cbSize：结构MOOSEMOVEPOINT的大小。
lppt：指向结构MOUSEMOVEPOINT的指针，该结构包含了有效的鼠标坐标（屏幕坐标）。也可以包含一个时间标记。
函数GetMouseMovePoints在鼠标坐标历史记录中查找一点。如果此函数查到该点，则返回包含提供点在内的在此之前的最后一个nBufPoints。如果应用程序提供一个时间标记，则函数GetMouseMovePoints将用它来区分记录于不同时间的两个相等的点。
应用程序使用从消息WM_MOOSEMOVE中接收的鼠标坐标来调用此函数，并把它们转换为屏幕坐标。
lpptBut：将接收点的缓冲区的指针。其大小至少应为cbsze· nBuffPoints。
nBufPoints：指定将取得的点的个数。
resolution：指定希望的分辨率。此参数可取下列值之一：
GMMP_USE_DISPLAY_POINTS：用显示分辨率取得点。
GMMP_USE_DRIVER_pOINTS：用驱动器分辨率取得点。在Windows CE平台下，画笔驱动器的分辨率高于显示分辨率。这样，函数GetMouseMovePoints可被那些需要准确分辨率的应用程序使用。（如手写体识别软件或计算机辅助设计软件）。

### 返回值

如果函数调用成功，返回值是缓冲区里的点的数目。否则，函数返回C1。若想获得更多的错误信息，请调用GetlastError函数。函数GetLastError可能返回下面的错误代码。
GMMF_ERR_POINT_NOT_FOUNQ由lPPt指定的点找不到或不再存在于系统缓冲区中。
备注：系统至少保留着64个鼠标坐标及其时间标记。如果应用程序给GetMouseMovePoints提供了一个鼠标坐标，而该坐标存在于系统中的鼠标坐标历史记录中，则函数从历史坐标记录取得指定个数的坐标。也可以提供一个时间标记，用来区分历史记录中相同的点。
函数GetMouseMonePoints将返回实际发送给调用线程和其他线程的点。

### 速查

Windows NT：5.0及以上版本；Windows：98及以上版本；Windows CE：2.0及以上版本；头文件：winuser.h；输入库：user32.lib。