由于System.AccessViolationException,无法使用IntelliTrace收集调用信息

时间:2015-06-23 12:27:11

标签: visual-studio intellitrace

最近,我安装了VS 2015 RC。它在版本14中使用IntelliTrace。从那时起,我遇到了早期版本的IntelliTrace的问题。

当我尝试收集呼叫信息时会出现问题(如果我只想收集诊断事件则没有问题)。无论如何,如果我使用独立收集器或VS我收到以下错误:

SELECT * 
FROM TABLE_MAIN T1
CROSS APPLY
(
    SELECT * FROM TABLE_SUB xT2
    WHERE T2.PKT_NO = xT2.PKT_NO 
    AND xT2.EXP_POINT BETWEEN T1.EXP_POINT-0.100 AND T1.EXP_POINT + 0.100
)EX

重新安装VS 2015没有帮助。在事件日志中,我看到以下事件列表(从最早开始):

Unhandled Exception: System.AccessViolationException: Attempted to read or write
protected memory. This is often an indication that other memory is corrupt.

一开始一切都还可以但出现问题。 Example.exe是一个控制台应用程序。

在VS 2015 RC之前我安装了测试版,我没有发现任何问题。

我可以使用IntelliTrace for VS 2015 RC,但我想知道为什么其他版本不起作用。可能存在一些冲突。我也想知道为什么独立收集器受到影响。我确信它独立于VS二进制文件。

你有类似的经历吗?有什么想法吗?

*****编辑*****

看起来我不够清楚。与VS 2015(版本14)一起分发的IntelliTrace可以正常工作。但是,早期版本的IntelliTrace(版本11和12)不起作用。他们在安装VS 2015 RC后停止工作。

2 个答案:

答案 0 :(得分:0)

感谢您提出问题。 如果您运行的是安装了Visual Studio 2015的旧版IntelliTrace独立收集器,则这可能是一个已知问题。问题是.Net 4.6将与VS 2015一起安装,旧的IntelliTrace代码将与最新版本的.Net一起工作。我想建议的解决方案是将独立收集器升级到最新版本。 如果您仍然看到最新独立收藏家的问题并祝您好运,请告诉我。

答案 1 :(得分:0)

您应该能够从您的Visual Studio中获取最新的独立收集器的副本。它可以在C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ CommonExtensions \ Microsoft \ IntelliTrace \ 14.0.0 \ IntelliTraceCollection.cab

中找到

尝试使用该驾驶室。问题可能已经解决了。