1 (изменено: Hollisch, 2015-12-26 04:26:37)

Тема: CMD: Изменить скорость прокрутки колеса через cmd

Добрый день, подскажите, как можно через командную строку изменить скорость прокрутки колеса мышки?
Речь о параметре в вкладке "Колесико" в control mouse (настройки мышки).
Вертикальная прокрутка:
"Поворот колесика на один щелчок служит для прокрутки на указанное количество строк".
В реестре данный параметр располагается в HKCU\Control Panel\Desktop и зовется WheelScrollLines, но смена его значения не приводит к реальным изменениям. Возможно ли это вообще посредством cmd \ batch?

2

Re: CMD: Изменить скорость прокрутки колеса через cmd

После долгих поисков нашел решение которое мне подходит, но посредством AHK, потребность в реализации через cmd отпала.

Для получения скорости колесика:

DllCall("SystemParametersInfo", UInt, 0x68, UInt, 0, UIntP, Scroll_Lines, UInt, 0) 
MsgBox Current scroll speed %Scroll_Lines%

Для установки скорости:

Scroll_Lines_Accel := 35
DllCall("SystemParametersInfo", UInt, 0x69, UInt, Scroll_Lines_Accel, UInt, 0, UInt, 0)

Сам спросил, сам ответил... а ведь искал долго. Ну да ладно, возможно кому-то пригодится. @Googlecache

3

Re: CMD: Изменить скорость прокрутки колеса через cmd

Нашёл на 10 сек.

4

Re: CMD: Изменить скорость прокрутки колеса через cmd

Все верно. Проблема с изменением целой серии параметров настройки через реестр в том, что Винда воспринимает результат изменения только после перегрузки профиля. Убиение процесса explorer.exe и его повторный запуск нужного эффекта не дают,  так что приходится перезаходить в Винду, а это, сами понимаете, лишает скрипт всякого смысла.
В WinXP вместо перелогона можно было использовать такую команду:

%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters

В 7-ке она уже не катит. Остался единственный путь - использовать API функцию SystemParametersInfo, вызывая ее с тем параметром, который необходимо сменить (в данном случае - SPI_SETWHEELSCROLLLINES).
Пример на AHK именно это и делает. Помимо AHK можно использовать и другие средства, но смысл их действия сводится к одному и тому же - API вызову SystemParametersInfo.