マウスポインタの速度

[戻る]
Hana 2002/09/18(水) 10:08:31
マウスポインタの速度を変えたいのですがうまくいきません。

int nSpeed = 20 ;
SystemParametersInfo( SPI_SETMOUSESPEED, 0, &i, 
                      SPIF_UPDATEINIFILE | SPIF_SENDCHANGE ) ;

とやっても戻りが0となり失敗しているようです。
ちなみに

SystemParametersInfo( SPI_GETMOUSESPEED, 0, &nSpeed, NULL ) ;

というのは成功します。
解決方法が何かあれば教えてください。おねがいします。

VC++ 6.0
MFC
WinXP

dairygoods 2002/09/18(水) 10:33:53
GetLastError()はどんなエラーコードを返しますか?

Hana 2002/09/18(水) 11:32:34
GetLastError() では0が返ってきます。
エラーではないってことでしょうか?

ku 2002/09/18(水) 11:58:50
使ったことないんだけど、アドレスじゃなくて値を渡すのでは?
int nSpeed = 20;
SystemParametersInfo(SPI_SETMOUSESPEED, 0, nSpeed,

Hana 2002/09/18(水) 12:51:13
[[解決]]
kuさんどうもありがとうございます。
こんな感じでできました。

int nSpeed = 20;
SystemParametersInfo(SPI_SETMOUSESPEED, 0, (LPVOID)nSpeed,

LPVOIDだからアドレスを渡すんだとばかり思っていました。

dairygoods 2002/09/18(水) 13:10:55
確かに。ヘルプの記述違いですかね。

CD-ROMのMSDNのヘルプ:
The pvParam parameter must point to an integer between 1 (slowest) and 20 
(fastest). 

MSDN Onlineのヘルプ:
The pvParam parameter is an integer between 1 (slowest) and 20 (fastest).

古いスレッドには追加発言できません。