【问题标题】:'SystemAccessViolationException' occurs intermitently'System AccessViolationException' 间歇性发生
【发布时间】:2011-05-04 13:00:07
【问题描述】:

我的应用程序是一个使用 COM 对象的 Windows .NET 客户端......基本上我们要做的是创建一个 COM 对象实例,在它们上调用一些方法并 ReleaseCOMObject......但是在某些情况下(在使用 WAN 连接的产品上) ) 我们得到“SystemAccessViolationException”。

这个应用程序是一个数据驱动的应用程序,我们从 db(位于远程)读取数据并显示。

我需要遵循哪些故障排除步骤..异常中没有堆栈跟踪,并且由于它间歇性发生,因此很难确定根本原因..

任何想法都将不胜感激。

感谢和问候, 光伏。

【问题讨论】:

  • 找到任何会产生 SystemAccessViolationException 异常的代码并捕获异常。
  • 您的应用程序是多线程的吗?您使用的是 STA 还是 MTA?

标签: c# .net com unmanaged managed


【解决方案1】:

如果您还没有这样做,请下载适用于 Windows 的调试工具(Windows SDK 的一部分)。

有一个名为 ADPlus 的工具可以配置为将调试器附加到托管 COM 对象的进程,并在发生间歇性访问冲突异常时转储小型转储文件。然后,您可以将 minidump 文件加载到调试器(如 WinDbg 或 VS 调试器)中,并调查 AV 的根本原因。

调试工具附带一个非常有用的 CHM 帮助文件,其中包含大量信息,如果您不熟悉此类诊断调试。

祝你好运。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-25
    • 2021-04-24
    • 1970-01-01
    • 2010-11-19
    • 2013-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多