重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

Windows XP で.net を使っています。

現在出先で再起動のたびに初期設定に戻されてしまうパソコンを使っています。毎回マウスの速度を変更するのが面倒なので、そういうexeを作ろうと思ったのですが、うまくできなくて困っています。
レジストリの変更は行われているのですが、即時反映ができません。

Dim key As Microsoft.Win32.RegistryKey
key=Microsoft.Win32.Registry.CurrentUser.CreateSubKey("Control Panel\Mouse")
key.SetValue("MouseSensitivity", "16")

で、レジストリの値は変更されました。

続いて、

SendMessag(HWND_BROADCAST,WM_SETTINGCHANGE, 0, 0)

※Private HWND_BROADCAST As New IntPtr(&HFFFF&)
※Private WM_SETTINGCHANGE As Integer = &H1A

で、即時反映を行うのですが反映されないで困っています。

もちろん再起動すれば反映されますが、出先のパソコンでは初期設定が反映されますので。

何か根本的に間違っているのでしょうか?
それともこれはできないことなのでしょうか?

できないならできないであきらめがつくのでどなたかよろしくお願いいたします。

A 回答 (1件)

API の SystemParametersInfo(SPI_SETMOUSE,...) を使用してみてはいかがでしょうか。

    • good
    • 0
この回答へのお礼

SystemParametersInfoでやってみたのですがうまくパラメータの設定ができず、VCでやってみたらできました。

回答ありがとうございました。

お礼日時:2007/06/28 02:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!