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

使用Outlook对象模型时触发Control Flow Guard异常的问题求助

Outlook 11月9日更新后崩溃:Control Flow Guard异常排查问题

问题背景

多个客户在将Outlook升级至11月9日发布的更新版本后出现崩溃现象,涉及至少两个更新频道:

  • 月度企业版2209(版本号15629.20258)
  • 半年企业版2202(版本号14931.20806)
    目前处于根因排查阶段,已收集到如下相关数据。

错误日志信息

事件查看器记录

故障应用程序名称: OUTLOOK.EXE,版本: 16.0.15629.20258,时间戳: 0x63603097
故障模块名称: ucrtbase.dll,版本: 10.0.19041.789,时间戳: 0x2bd748bf

注:部分崩溃案例中,故障模块为ntdll.dll而非ucrtbase.dll

崩溃转储异常信息

Unhandled exception at 0x00007FFF720BC67F (ntdll.dll) in OUTLOOK.EXE.7468.dmp: Indirect call guard check detected invalid control transfer.

触发崩溃的代码片段

从客户转储文件中发现,崩溃触发点为看似普通的变量赋值或类型转换代码:

Dim propertyAccessor As Microsoft.Office.Interop.Outlook.PropertyAccessor = mail.PropertyAccessor 

以及

Dim mail As Microsoft.Office.Interop.Outlook.MailItem = TryCast(item, Microsoft.Office.Interop.Outlook._MailItem) 

调用栈信息

所有崩溃案例的调用栈均显示,代码由Add-in Express相关方法触发:

AddinExpress.MSO.2005.dll!AddinExpress.MSO.ADXOutlookAppEvents.DoExplorerSelectionChange(object explorer)
AddinExpress.MSO.2005.dll!AddinExpress.MSO.ADXAddinModule.OlExplorerEvents_10_SinkHelper.AddinExpress.MSO.IExplorerEvents_10.SelectionChange()

疑问

  1. 为何看似无关紧要的变量赋值或TryCast操作会触发Control Flow Guard(控制流保护)异常?
  2. 有哪些具体步骤可进一步排查该问题的根因?

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 18:31:43