是否可以通过 GPO 控制左手鼠标设置?(或者可以使用 GPO 推送的脚本:)
我有 Windows 7/Windows Server 2008。
非常感谢您的建议。
吐司
答案1
我知道您已经接受了答案,但是这里也为您提供了它的 VBS 版本(因为我知道您正在寻找它):
Const HKEY_CURRENT_USER = &H80000001
strComputer = "."
Set Shell = CreateObject("WScript.Shell")
Set objRegistry = GetObject ("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
strKeyPath = "Control Panel\Mouse"
strValueName = "SwapMouseButtons"
strValue = "1"
objRegistry.SetStringValue HKEY_CURRENT_USER, strKeyPath, strValueName, strValue
请注意,这些设置在用户下次登录之前(应用后)不会生效,还要注意,像 Logitech 的 MouseWare 和 SetPoint 这样的软件在登录后加载时通常会将该注册表设置切换回来(直到您在其鼠标专用软件中设置它)。
答案2
是的,可以做到。
组策略 -> 用户配置 -> 首选项 -> Windows 设置
转到“注册表”设置。
添加新的注册表设置。
[HKEY_CURRENT_USER\Control Panel\Mouse]
SwapMouseButtons (RegSZ) = 1
答案3
这就是答案,因为它切换到左手,然后再次单击,它会切换回来。 SwapMouseButtons 只会切换到左手,而不会切换回来。
使用一个脚本在左手和右手之间进行切换 - 单击一次即可切换,然后再次单击即可切换回,RUNDLL32.EXE USER32.DLL,SwapMouseButton
而 只能切换到左手,不能切换回。
注意:如果您想在创建此文件后通过电子邮件发送此文件,请MouseHandSwitch.vbs
复制以下脚本并将其保存为.vbs
桌面上的文件,然后您就可以得到它了。
'> Mouse change Left to Right handed.
'> and repeat to set Left to Right handed again.
'> By William Anderson July 17, 2015
Sub DoAction(str, ms)
'> Check status until ready
status = (WshShell.AppActivate)(cPanel.ProcessID)
Do Until status = true
WScript.Sleep 100
status = (WshShell.AppActivate)(cPanel.ProcessID)
WScript.Sleep 100
Loop
if status = true then
WshShell.SendKeys str
WScript.Sleep ms
End if
End Sub
'> Set windows for best performance
Set WshShell = CreateObject("WScript.Shell")
Set cPanel = WshShell.Exec("rundll32.exe shell32.dll,Control_RunDLL main.cpl")
status = (WshShell.AppActivate)(cPanel.ProcessID)
Do Until status = true
WScript.Sleep 100
status = (WshShell.AppActivate)(cPanel.ProcessID)
WScript.Sleep 100
Loop
if status = true then
'> Send alt S to mouse panel
DoAction "%S", 20
DoAction "{ENTER}", 20
End if