You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qt/QML Windows应用在Grammarly运行时卡顿严重的解决方案咨询

解决方案

无需立即编译Qt,优先尝试以下方案

  • 确保QT_ACCESSIBILITY=0生效:
    该环境变量必须在QGuiApplication/QApplication实例化前设置才会生效,可通过两种方式验证:

    1. 启动应用前通过命令行注入:set QT_ACCESSIBILITY=0 && Oxygen.exe
    2. 在代码开头硬编码设置:
      qputenv("QT_ACCESSIBILITY", "0");
      QGuiApplication app(argc, argv);
      
  • 禁用Qt辅助功能插件:
    Qt的辅助功能依赖plugins/accessible目录下的插件(如qtaccessiblewidgets.dll、qtaccessiblequick.dll),可通过两种方式处理:

    1. 临时重命名该目录,测试应用是否恢复流畅
    2. 在代码中提前禁用扩展:
      QCoreApplication::setAttribute(Qt::AA_DisableAccessibleExtensions);
      QGuiApplication app(argc, argv);
      

    打包应用时直接排除这些插件即可永久生效。

  • Windows系统级优化:

    1. 检查Grammarly设置,看是否支持将目标应用加入忽略列表(部分桌面版提供该功能)
    2. 通过Windows API减少辅助技术的查询触发:
      #include <windows.h>
      int main(int argc, char *argv[])
      {
          // 在Qt应用实例化前调用
          SetProcessDefaultCaretBlinkTime(500);
          QGuiApplication app(argc, argv);
          // ... 剩余代码
      }
      

仅当上述方案无效时,考虑编译Qt

如果所有轻量方案都无法解决问题,可以自行编译Qt 5.15.2,添加编译配置-no-accessibility,完全移除辅助功能模块。编译前需配置好Windows编译环境(如Visual Studio、Perl、Python等)。

内容的提问来源于stack exchange,提问作者Gunther

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 15:00:47