HKMGetCursorPos2 获得鼠标坐标
功能
获得鼠标在系统中的坐标。功能与HKMGetCursorPos完全相同,只是为了解决部分语言不支持参数传址的问题。
参数
- 参数1: 设备对象:无类型指针。使用HKMOpen可以创建它。
返回值
无符号32位整型数,低16位是横坐标,高16位是纵坐标
C#例子
uint dwDevId;
IntPtr lpDev;
uint dwPos;
int x, y;
dwDevId = SkmCore.HKMSearchDevice(0x1234, 0xABCD, 0);
if (dwDevId == 0xFFFFFFFF)
{
Console.WriteLine("未找到键鼠模拟器");
return;
}
lpDev = SkmCore.HKMOpen(dwDevId, 0);
if (lpDev == IntPtr.Zero)
{
Console.WriteLine("打开键鼠模拟器失败");
return;
}
dwPos = SkmCore.HKMGetCursorPos2(lpDev);
x = (int)(short)(dwPos & 0xFFFF);
y = (int)(short)(dwPos >> 16);
Console.WriteLine($"鼠标坐标:{x},{y}");
SkmCore.HKMClose(lpDev);
C语言例子
DWORD dwDevId,dwPos;
LPVOID lpDev;
dwDevId=HKMSearchDevice(0x1234,0xABCD,0);
if(dwDevId==0xFFFFFFFF)
{
printf("未找到键鼠模拟器\n");
return 0;
}
lpDev=HKMOpen(dwDevId,0);
if(lpDev==NULL)
{
printf("打开键鼠模拟器失败\n");
return 0;
}
dwPos=HKMGetCursorPos2(lpDev);
printf("鼠标坐标:%d,%d\n",(long)(short)dwPos,(long)(short)(dwPos>>16));
HKMClose(lpDev);