2015-10-08 2 views
0

У меня проблема, что время от времени количество строк или w, которое движется при повороте колеса мыши, колеблется от 3 до 30, и мой брат иногда видит, что он изменяется на 100.Изменение настроек окон со сценарием

Что я имею в виду, когда вы переходите в «Панель управления» -> «Мышь» ->, а затем на вкладку мыши-колесика, у нее есть 2 прокрутки с номерами, и мне нужно изменить значение первый со сценарием или .exe или любым другим способом, которым вы знаете, как его изменить.

Ибо кто может столкнуться с этой проблемой и хочет решение, вот код:

[DllImport("user32.dll", SetLastError = true)] 
static extern bool SystemParametersInfo(int uiAction, int uiParam, IntPtr pvParam, int fWinIni); 

static void Main(string[] args) 
{ 
    const int SPI_SETWHEELSCROLLLINES = 0x0069; 
    const int SPIF_UPDATEINIFILE = 0x01; 
    const int SPIF_SENDCHANGE = 0x02; 

    SystemParametersInfo(SPI_SETWHEELSCROLLLINES, 3, IntPtr.Zero, 
         SPIF_UPDATEINIFILE | SPIF_SENDCHANGE); 
} 

Спасибо за помощь!

+0

Возможно, вы также можете добавить тег для своего языка? – JoSSte

+0

Несомненно. не был полностью уверен, что мне сначала придется использовать C#, подумал, что, возможно, кто-то будет легко использовать какой-нибудь короткий .bat-файл. Сделаю. спасибо –

ответ

2

параметры системы не быть изменены с помощью ключей реестра, потому что (1) что это деталь реализации, что может измениться в будущих версиях Windows, или даже в зависимости от другие настройки профиля пользователя и (2), поскольку вы обновляете только сохраненное значение, а не тот, который в настоящее время активен.

Правильный путь заключается в использовании SystemParametersInfo API, указав правильный параметр постоянной (в вашем случае, SPI_SETWHEELSCROLLLINES) и SPIF_UPDATEINIFILE | SPIF_SENDCHANGE в качестве последнего параметра, чтобы как активировать его прямо сейчас, и сохранить его в течение следующих сессий.

+0

Эй, парень, взял меня пару минут, но я нашел все постоянные значения от pinvoke и работает. Большое спасибо! –

0

С смерзаться вы можете установить скрипт, который устанавливает мышь wheeel скорость прокрутки, свойство здесь: HKEY_CURRENT_USER \ Control Panel \ Desktop \ WheelScrollLines

просто просматривать Regedit (Win + R Regedit) посмотрите на значение WeelScrollLines , а затем создать файл рег как указано Microsoft: https://support.microsoft.com/en-us/kb/310516#bookmark-syntax

+0

ваш .reg файл будет выглядеть так, всего две строки в текстовом поле. [HKEY_CURRENT_USER \ Панель управления \ Рабочий стол] «WheelScrollLines» = «3» – Damien

+0

Я отредактировал сообщение, изменение реестра работает, но фактическое значение в панели управления не изменяется –