简体   繁体   中英

crashdump debugging with Visual Studio 2010

I am trying to get crash dump debugging working with 2010, but it keeps failing.

I get this error when I try to start debugging:

"Managed Minidump Debugging: The signature verification for the file 'C:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319\\mscordbi.dll' failed with the error 0x800700c1.:

I'm using the simplest program I can think of just to get off the ground (below).

Here are the steps I am taking:

  1. Build
  2. Run with a double-click from Windows explorer
  3. right-click on the process in TaskManager, and select "Create Dump File"
  4. kill the process
  5. open the dump file in Visual Studio (File | Open, set filter to crash dumps)
  6. Select "Debug with Mixed"

much loading of symbols (I have MS Symbol server enabled)

Boom (I get an error dialog saying I need to specify my symbol path -- which I believe I have done -- MS symbol server is enabled, and my solution is loaded)

In the output window, I get the following error (note that there are also a bunch of successful symbol loads, including for my exe):

Managed Minidump Debugging: The signature verification for the file 'C:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319\\mscordbi.dll' failed with the error 0x800700c1.

(All the while, the solution with the code for my exe is loaded in the Visual Studio instance).

Any idea what I am doing wrong? Is this the right procedure for crashdump debugging in VS 2010?

The test dummy program:


    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);
        }
    }

Edit

I'm going to vote to close -- I don't know exactly what the deal is, but everything is working now.

Here's what I did:

  1. I started debugging the running process in VS 2010
  2. I used the "save dump file" option off of the debug menu in 2010
  3. I stopped the process and loaded the dump file.

It worked, so I thought "hmm, maybe the problem was with the dump file that I created (had used both adplus and TaskManager).

But no, now those work too. (although they failed very reliably until I did the 3 steps above). Weird, but now I cannot repro, so I'm going to vote to close.

也许这个问题/答案“调试C#代码时出现的符号问题”可以帮助您。

The common tool used to debug dumps is WinDbg which is available in Debugging Tools for Windows. For x64 dumps you need the x64 debugger, while for x86 you need x86 debugger.

Visual Studio is x86 only, so you should not expect it can debug all dumps.

I think that this was an unstable machine/need a reboot issue. I have been unable to repro the problem

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM