forked from ruudmens/LazyAdmin
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSet-MouseSpeed.ps1
49 lines (34 loc) · 1.92 KB
/
Set-MouseSpeed.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
$registryPath = "HKCU:\Control Panel\Mouse"
$Name = "MouseSensitivity"
$value = "10"
Set-ItemProperty -Path $registryPath -Name $name -Value $value -Force | Out-Null
Add-Type @"
using System.Runtime.InteropServices;
public class PInvoke {
[DllImport("user32.dll")] public static extern int SystemParametersInfo(int uiAction, int uiParam, int[] pvParam, int fWinIni);
[DllImport("user32.dll")] public static extern int SystemParametersInfo(int uiAction, int uiParam, System.IntPtr pvParam, int fWinIni);
}
"@
$mouse = Get-ItemProperty 'HKCU:\Control Panel\Mouse'
# DoubleClickHeight -> SPI_SETDOUBLECLKHEIGHT
[PInvoke]::SystemParametersInfo(0x001E, $mouse.DoubleClickHeight, $null, 4)
# DoubleClickSpeed -> SPI_SETDOUBLECLICKTIME
[PInvoke]::SystemParametersInfo(0x0020, $mouse.DoubleClickSpeed, $null, 500)
# DoubleClickWidth -> SPI_SETDOUBLECLKWIDTH
[PInvoke]::SystemParametersInfo(0x001D, $mouse.DoubleClickWidth, $null, 4)
# MouseHoverHeight -> SPI_SETMOUSEHOVERHEIGHT
[PInvoke]::SystemParametersInfo(0x0065, $mouse.MouseHoverHeight, $null, 4)
# MouseHoverTime -> SPI_SETMOUSEHOVERTIME
[PInvoke]::SystemParametersInfo(0x0067, $mouse.MouseHoverTime, $null, 400)
# MouseHoverWidth -> SPI_SETMOUSEHOVERWIDTH
[PInvoke]::SystemParametersInfo(0x0063, $mouse.MouseHoverWidth, $null, 4)
# MouseSensitivity -> SPI_SETMOUSESPEED
[PInvoke]::SystemParametersInfo(0x0071, 0, [IntPtr][int]$mouse.MouseSensitivity, 10)
# MouseThreshold1, MouseThreshold2, MouseSpeed -> SPI_SETMOUSE
[PInvoke]::SystemParametersInfo(0x0004, 0, [int[]]($mouse.MouseThreshold1, $mouse.MouseThreshold2, $mouse.MouseSpeed), 0)
# MouseTrails -> SPI_SETMOUSETRAILS
[PInvoke]::SystemParametersInfo(0x005D, $mouse.MouseTrails, $null, 0)
# SnapToDefaultButton -> SPI_SETSNAPTODEFBUTTON
[PInvoke]::SystemParametersInfo(0x0060, $mouse.SnapToDefaultButton, $null, 0)
# SwapMouseButtons -> SPI_SETMOUSEBUTTONSWAP
[PInvoke]::SystemParametersInfo(0x0021, $mouse.SwapMouseButtons, $null, 2)