Как написать код, замедляющий работу мыши во время игрыC#

Место общения программистов C#
Ответить
Anonymous
 Как написать код, замедляющий работу мыши во время игры

Сообщение Anonymous »

Я написал следующее, чтобы помочь мне замедлить движение прицела мыши, когда я играю в видеоигры:

Код: Выделить всё

using System;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using KeyboardHookManager;

namespace MouseSpeedDesktop
{
public partial class Form1 : Form
{

public const UInt32 SPI_GETMOUSESPEED = 0x0070;
public const UInt32 SPI_SETMOUSESPEED = 0x0071;

[DllImport("User32.dll")]
static extern Boolean SystemParametersInfo(
UInt32 uiAction,
UInt32 uiParam,
IntPtr pvParam,
UInt32 fWinIni);

public Form1()
{
InitializeComponent();
}

public void KeyPressed(object sender, KeyEventArgs e)
{
if (e.KeyCode != Keys.Q)
return;
int speed = 3;
SystemParametersInfo(SPI_SETMOUSESPEED, 0, new IntPtr(speed), 0);
}

public void KeyRemoved(object sender, KeyEventArgs e)
{
if (e.KeyCode != Keys.Q)
return;
int speed = 10;
SystemParametersInfo(SPI_SETMOUSESPEED, 0, new IntPtr(speed), 0);
}

private void Form1_Load(object sender, EventArgs e)
{
HookManager.KeyDown += KeyPressed;
HookManager.KeyUp += KeyRemoved;
}

private void Form1_Closing(object sender, FormClosingEventArgs e)
{
HookManager.KeyDown -= KeyPressed;
HookManager.KeyUp -= KeyRemoved;
}
}
}
Когда я не играю в игру, все работает хорошо. Когда я удерживаю кнопку «Q», скорость мыши снижается. Когда я отпускаю кнопку «Q», скорость мыши возвращается к нормальной скорости. Но когда я играю в видеоигру, скорость мыши больше не замедляется. Как это исправить?

Подробнее здесь: https://stackoverflow.com/questions/792 ... ing-a-game
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»