我使用JNA调用SystemParametersInfo从USER32。这是我的JNA接口方法:JNA SystemParametersInfo设置鼠标速度返回false(不改变)
boolean SystemParametersInfo(
int uiAction,
int uiParam,
Pointer pvParam,
int fWinIni
);
下面是我如何使用它:
User32.INSTANCE.SystemParametersInfo(SPI_SETMOUSESPEED, 0,
new IntByReference(2).getPointer(),
SPIF_UPDATEINIFILE | SPIF_SENDCHANGE | SPIF_SENDWININICHANGE);
这应该鼠标速度设置为2(满分20),但它没有任何效果,并且该方法是总是返回假。
这些是我使用的标志值:
private static final int SPI_GETMOUSESPEED = 0x70;
private static final int SPI_SETMOUSESPEED = 0x0071;
private static final int SPIF_UPDATEINIFILE = 0x01;
private static final int SPIF_SENDCHANGE = 0x02;
private static final int SPIF_SENDWININICHANGE = 0x02;
你能列出你使用的标志吗? (例如SPI_SETMOUSESPEED,SPIF_UPDATEINIFILE等)。 –
你检查过'Native.GetLastError()'的值吗? – technomage
@technomage'GetLastError'是_0_ – Jire