开发者

Visual C# backtrace: how to know where [external code] resides?

开发者 https://www.devze.com 2022-12-14 07:25 出处:网络
I am using visual c# to debug a large c# project. The开发者_JS百科 project is very large and only some ofthe pdbs are build by myself. I can build all the pdb however it\'s very time consuming. I am d

I am using visual c# to debug a large c# project. The开发者_JS百科 project is very large and only some of the pdbs are build by myself. I can build all the pdb however it's very time consuming. I am debugging a backtrace but a part of the trace is marked with [External Code]. I know some pdb is missing, but how can I know which DLL the external code resides? In C I can get the EIP then see the process mapping to determine where the EIP lives, but how this can be done in .Net environment?


Go into Tools | Options | Debugging | General, and uncheck the "Enable Just My Code" checkbox. Now Visual Studio will show the full call stack (at least for managed code, you still may see some "native to managed transitions" in there).


So if your project is really so big, than i asume that all your classes are well shared along your namespaces and that all the assemblies are named after the namespaces they contain. So if take a look where your external code begins (or ends) you should find out from (or to) where the call is going and determine the missing assembly pdb.

0

精彩评论

暂无评论...
验证码 换一张
取 消