Visual Studio 2019键盘无响应/字符重复 常规排查无效寻求解决方案
我日常使用安装了Resharper及对应StyleCop扩展的Visual Studio 2019 Enterprise(v16版本)时,频繁出现键盘异常问题,单日多次发作,具体表现如下:
- 键盘输入的按键无响应,内容未录入编辑器
- 即使慢速输入,按键录入顺序也出现错乱
- 按下的按键(包括CTRL+V粘贴操作)会被连续重复录入
目前仅能通过重启Visual Studio临时解决,重启后可正常使用5到60分钟,之后问题会再次复发。
已尝试过以下排查方案,均未解决问题:
- 将廉价外接键盘更换为罗技G213键盘
- 拔除鼠标、键盘之外的所有USB设备
- 重装Visual Studio软件
由于Resharper和StyleCop是日常工作必备工具,暂时未尝试卸载这两款扩展验证问题。请问有没有人遇到过同款问题,或者知道对应的解决办法?
解决方案(无需卸载Resharper/StyleCop)
- 调整Resharper性能配置
打开Extensions > Resharper > Options > Environment > Performance Guide,勾选限制大解决方案的全域分析,将全域分析内存阈值调整为设备总内存的30%以下;同时进入Typing Assistance设置,关闭输入时自动格式化选项,避免输入线程被实时校验逻辑抢占。 - 调整StyleCop校验时机
进入Resharper > Options > Code Inspection > Settings,将StyleCop相关规则的触发时机从输入时校验修改为构建时校验;如果使用独立StyleCop扩展,直接在扩展管理页面的StyleCop选项中关闭实时输入扫描。 - 修改Visual Studio启动参数
右键点击VS2019快捷方式选择「属性」,在「目标」字段末尾添加/noVsHub参数,示例如下:
重启VS后进入"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\devenv.exe" /noVsHub工具 > 选项 > 文本编辑器 > 高级,关闭启用基于UI上下文的键入速度优化选项。 - 清理Resharper缓存
关闭所有VS实例,打开资源管理器输入路径%LOCALAPPDATA%\JetBrains\Transient,删除对应版本Resharper的所有缓存文件夹,重启VS后会自动重建无损坏的缓存文件。
如果以上操作后问题仍偶发,可在输入密集的工作时段点击VS右下角的Resharper图标,选择暂停代码分析即可临时恢复正常输入,无需完全卸载扩展,非编码时段再重新开启分析功能即可。
内容的提问来源于stack exchange,提问作者Dan Cook
相关产品推荐
相关产品推荐



