What does “external code” in the call stack mean?

前端 未结 6 1642
梦毁少年i
梦毁少年i 2021-02-02 08:13

I call a method in Visual Studio and attempt to debug it by going over the call stack.

Some of the rows in it are marked \"External code\".

What exactly does thi

6条回答
  •  名媛妹妹
    2021-02-02 08:21

    [External code] means that there is no debugging information available for that dll.

    What you can do is in Call Stack window click right mouse button. Then select Show External Code this will expand [External Code] and will show you modules that are being called.

    enter image description here

    once you get it expanded you will see dll's that are being called you can get locations on disk by clicking on Symbol Load Information...

    enter image description here

    This will open dialog that shows locations on disk

    enter image description here

    If you want to debug these external files you need to get .pdb files for dll's and place in same folder as .dll

    this should allow you to Load symbols (menu in screenshot 2 above Symbol Load Information) and start debugging.

    More on getting .pdb files here.

    And here's an actual example of EF .pdb being generated

    Hope this saves you some time.

提交回复
热议问题