Character Problem - Cannot Enter .NET Code

I can’t take the Visual Studio 2010 SP1 step in any class of the .NET Framework, I found many tutorials on the Internet, but none of them work ...

Description

Here in the output window it says:

Step into: Stepping over method without symbols 'System.Collections.Generic.SortedSet<Shared.Optimization.Solution<GaTest.CurveFitSimplex,double>>.Remove' 

Here is the contents of the entire output window:

 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\assembly\GAC_MSIL\Microsoft.VisualStudio.HostingProcess.Utilities\10.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.HostingProcess.Utilities.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Windows.Forms\v4.0_4.0.0.0__b77a5c561934e089\System.Windows.Forms.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Drawing\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\assembly\GAC_MSIL\Microsoft.VisualStudio.HostingProcess.Utilities.Sync\10.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.HostingProcess.Utilities.Sync.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\assembly\GAC_MSIL\Microsoft.VisualStudio.Debugger.Runtime\10.0.0.0__b03f5f7f11d50a3a\Microsoft.VisualStudio.Debugger.Runtime.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Users\Lu4\documents\visual studio 2010\Projects\Estimator\GaTest\bin\Debug\GaTest.vshost.exe', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml.Linq\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.Linq.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Data.DataSetExtensions\v4.0_4.0.0.0__b77a5c561934e089\System.Data.DataSetExtensions.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Microsoft.CSharp\v4.0_4.0.0.0__b03f5f7f11d50a3a\Microsoft.CSharp.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_32\System.Data\v4.0_4.0.0.0__b77a5c561934e089\System.Data.dll', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.dll', Symbols loaded. The thread 'vshost.NotifyLoad' (0x1444) has exited with code 0 (0x0). The thread '<No Name>' (0x3d8) has exited with code 0 (0x0). The thread '<No Name>' (0x10a8) has exited with code 0 (0x0). The thread 'vshost.LoadReference' (0xc40) has exited with code 0 (0x0). 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Users\Lu4\documents\visual studio 2010\Projects\Estimator\GaTest\bin\Debug\GaTest.exe', Symbols loaded. 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Users\Lu4\documents\visual studio 2010\Projects\Estimator\GaTest\bin\Debug\Shared.dll', Symbols loaded. Step into: Stepping over method without symbols 'System.Collections.Generic.SortedSet<Shared.Optimization.Solution<GaTest.CurveFitSimplex,double>>.Remove' 'GaTest.vshost.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll', Symbols loaded. 
+7
source share
2 answers

The article mentioned by Philip Munin explains step by step how to insert (debug) the .NET Framework code. However, if you do not want to download the entire framework and want to enter a specific assembly, you can perform a slightly easier procedure:

(they are tested in VS2015, where debugging options are slightly different from those in VS2010)

  • Make sure you can enter another code:

    Debug → Options → General

    • Enabled Only my code needs to be cleared
    • Enable .NET Framework source stacking to be checked (this will start loading characters from time to time when connected to the process, but may be canceled)
    • Step over properties and operators should be cleared
    • Need to check support for source server with support
  • Make sure the symbols for your assembly are loaded (eg. System.Data.dll )

    • Go to Debug -> Windows -> Modules
    • Filter for System.Data.dll
    • Right click -> Symbol Settings -> Check Microsoft Symbol Servers
    • Right-click again → Download Signs

You may not understand Microsoft Symbol servers because the characters were cached.

Now you can move on to the class methods defined in System.Data.dll .

A noticeable side effect: if exceptions are enabled (thrown), many exceptions can interrupt the launch of the application (“inhibited” exceptions with a frame). This can be eliminated either by removing certain types of exceptions, or manually using (or Reattaching ) after starting the application.

+1
source

Short answer: http://referencesource.microsoft.com/downloadsetup.aspx

Long answer:

Typically, PDB files are just maps between the source code and the IL build code. For it to work, you need to load the source code into "hardcoded" in the PDB. You can find this location simply by looking at the PDB file in a text editor. For example, if you see System.pdb, you will see lines like this:

f: \ dd \ NDP \ FX \ SRC \ mesh \ system \ mesh \ WebSockets \ websocketconnectionstream.cs F: \ dd \ NDP \ FX \ SRC \ services \ control \ system \ diagnosticts \ eventloginternal.cs

There are some poorly documented methods to override this behavior, but this is another story. You also need to make sure that you have correctly set up debugging settings in your visual studio: Tools\Options\Debugging\General

You can download the source code and detailed instructions from here .

+5
source

All Articles