作为无权访问 reg 命令的非管理员用户,我该如何将鼠标按钮换回来,以便主按钮为左键。
命令
rundll32.exe user32.dll,SwpmMouseButton
将把主按钮设置为右按钮。我尝试调用它两次,但它没有切换回来。我试过
rundll32.exe user32.dll,SwapMouseButton 0
rundll32.exe user32.dll,SwapMouseButton 1
但主按钮仍是右按钮。从命令行,是否可以将按钮交换回来,使左按钮成为主按钮。
如果无法从 cmd 执行此操作,可以使用 powershell 执行此操作吗?
答案1
看起来不能通过这种方式来完成,因为 rundll32.exe 不解析 1 或 0。 https://stackoverflow.com/questions/4806575/how-do-i-use-rundll32-to-swapmousebutton
另一种方法是使用 powershell add-type 命令。假设脚本名为 swap.ps1
# Define the parameter
param (
[string]$side = "L"
)
# Create an external definition
$swapbuttons = @'
[DllImport("user32.dll")]
public static extern Int32 SwapMouseButton(Int32 swap);
'@
# Add class
$swapper = Add-Type -MemberDefinition $swapbuttons -Name "swap" -Namespace "user" -PassThru
$setting = if ($side -eq "L") {0} else {1}
$result = $swapper::SwapMouseButton($setting)
切换到左侧
.\swap.ps1 大号