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

排查Word 2016中Tasks.Exists()调用无响应问题的方法

问题描述

接手客户系统维护数月,正推进系统升级:为迁移邮件至O365 Exchange,将RDP服务器上的Office套件从2013升级至2016。服务器上有一款第三方报表生成应用,运行时会打开Word并插入宏;用户操作完成退出时,应用会调用子程序通过Tasks.Exists()检查并关闭Word文档。

升级后出现随机无响应问题:Word文档关闭耗时极长(最长需30分钟),无响应时机完全随机。

复现测试

编写VBA测试代码尝试复现问题:

Sub test()
    a = 1
    For i = 1 To 10000
    If Tasks.Exists("MMMMM") Then
    Else
        a = a + 1
    End If
    Debug.Print (a)
    Next i
End Sub

通过Debug.Print无法定位具体无响应时机:有时可多次正常运行,有时首次循环就无响应,只能通过任务管理器强制终止进程。

已执行排查操作
  • 禁用服务器杀毒软件,问题仍存在
  • 将Windows Server 2016和Office 2016更新至最新版本,未解决问题
  • 观察到无响应且Tasks.Exists()无法正常搜索任务时,Software Protection服务会停止
  • 同事反馈:服务器上的Access应用偶尔也会出现关闭耗时过长的情况,该问题升级前就存在但发生频率极低,升级后未明显加剧
限制条件

报表应用为第三方开发,无法修改其使用Tasks.Exists()的逻辑,现寻求可行的排查思路与解决方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 17:22:34