[英]crashdump debugging with Visual Studio 2010
我正在尝试使崩溃转储调试与2010一起使用,但始终失败。
尝试开始调试时出现此错误:
“托管的小型转储调试:文件'C:\\ Windows \\ Microsoft.NET \\ Framework \\ v4.0.30319 \\ mscordbi.dll”的签名验证失败,错误0x800700c1。
我使用的是我想到的最简单的程序(下图)。
这是我正在采取的步骤:
符号加载过多(我已启用MS Symbol服务器)
Boom(出现错误对话框,提示我需要指定我的符号路径-我相信我已经完成了-启用了MS符号服务器,并加载了我的解决方案)
在输出窗口中,出现以下错误(请注意,还有很多成功的符号加载,包括我的exe):
托管的小型转储调试:文件'C:\\ Windows \\ Microsoft.NET \\ Framework \\ v4.0.30319 \\ mscordbi.dll'的签名验证失败,错误0x800700c1。
(一直以来,带有exe代码的解决方案都已加载到Visual Studio实例中)。
知道我在做什么错吗? 这是在VS 2010中进行崩溃转储调试的正确过程吗?
测试虚拟程序:
class Program
{
public static string AStaticProperty = "Hello World";
static void Main(string[] args)
{
DoLoop(10000);
}
static void DoLoop(int iterations)
{
for (int i = 0; i < iterations; i--)
System.Threading.Thread.Sleep(500);
}
}
编辑
我将投票决定要结束交易-我不确切知道这笔交易是什么,但现在一切正常。
这是我所做的:
它起作用了,所以我想:“嗯,也许问题出在我创建的转储文件上(曾经使用过adplus和TaskManager)。
但是不,现在这些也可以工作。 (尽管它们非常可靠地失败,直到我完成了上面的3个步骤)。 很奇怪,但是现在我不能再责备,所以我要投票关闭。
也许这个问题/答案“调试C#代码时出现的符号问题”可以帮助您。
用于调试转储的常用工具是WinDbg,可在Windows调试工具中找到。 对于x64转储,您需要x64调试器,而对于x86,则需要x86调试器。
Visual Studio仅是x86,因此不要指望它可以调试所有转储。
我认为这是不稳定的机器/需要重新启动问题。 我一直无法解决这个问题
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.