如何阻止Microsoft Teams桌面应用远程控制时抢占键盘快捷键
新版基于WebView2的Microsoft Teams桌面端在远程控制会话中会默认优先响应自身注册的全局快捷键,导致Ctrl+N、Tab这类按键无法传递到受控端的IntelliJ、终端等目标应用,网上流传的旧版快捷键禁用教程对新版本无效,以下为实测可用的方案,按易用性排序:
方案1:会话级开启全按键透传(最推荐,无副作用)
获得远程控制权限后,找到会话窗口顶部的远程控制悬浮工具栏,点击齿轮状设置按钮,在远程控制体验分类下勾选「将所有键盘快捷方式传递给受控设备」即可。开启后Teams会临时释放所有快捷键占用,所有输入会直接透传到受控端当前焦点的应用,不会再出现按键被拦截的问题。注意该设置为会话级配置,每次发起新的远程控制会话需要手动开启,目前Teams未提供永久默认开启的选项。方案2:修改本地配置永久禁用Teams全局快捷键
如果使用的是无上述透传选项的旧版经典Teams,可通过修改配置文件实现全局快捷键禁用:- 完全退出Teams:右键任务栏Teams图标选择「退出」,再打开任务管理器确认所有Teams相关进程(含更新进程、WebView2子进程)均已结束
- 在资源管理器地址栏输入路径
%APPDATA%\Microsoft\Teams回车,打开Teams配置目录 - 先备份目录下的
desktop-config.json文件,避免配置修改出错导致应用异常,再用文本编辑器打开该文件 - 找到
appPreferenceSettings配置块,在块内添加配置项"disableGlobalShortcuts": true,注意遵守JSON语法,相邻配置项末尾不要遗漏逗号 - 保存文件后重启Teams即可生效,此后Teams不会再注册全局快捷键,远程会话中所有按键均可正常透传。
方案3:临时快捷键透传(应急使用)
仅需要短时间使用被拦截的快捷键时,可在受控端目标应用获得焦点后,按住Ctrl+Shift+Space组合键,按住期间Teams会临时暂停快捷键拦截,所有输入直接传递到受控应用,松开按键后恢复原有逻辑,适合临时操作场景。
避坑说明:网上流传的在Teams常规设置页直接关闭快捷键、修改注册表禁用Teams快捷键的方法,仅对2022年之前发布的非WebView2版本Teams有效,在新版上操作要么找不到对应入口,要么会导致Teams功能崩溃,不建议使用。
内容的提问来源于stack exchange,提问作者Frank Neblung

