exceptionSwallowedOnCallFromCom MDA

如果通过一个不具有非托管 HRESULT 返回类型的方法从 COM 中调用了公共语言运行时 (CLR) 代码,于是从这些公共语言运行时 (CLR) 代码引发了一个异常,则将激活 exceptionSwallowedOnCallFromCOM 托管调试助手 (MDA)。

症状

调用 COM 中的某个托管组件返回值 FALSE 或 0。 或者,如果该方法具有一个 void 返回类型,则可能没有任何迹象显示在执行该方法期间引发了异常。 这种情况下会悄悄地捕捉异常而不出现提示,同时,执行将返回到 COM 调用方。

原因

引发了一个异常,但是没有有效的方法来报告该异常。

解决方法

只有信息性消息,不一定会指示出存在 bug。

对运行时的影响

此 MDA 对 CLR 无任何影响。 它只报告关于以无提示方式捕捉到的异常的数据。

Output

信息性消息包括方法名、类型名和异常消息。

配置

<mdaConfig>
  <assistants>
    <exceptionSwallowedOnCallFromCom enable="false" />
  </assistants>
</mdaConfig>

请参见

参考

MarshalAsAttribute

概念

使用托管调试助手诊断错误

互操作封送处理

其他资源

互操作性