Debugging unmanaged code while debugging managed code
The .NET 3.5 application I am working on consists of bunch of different solutions. Some of these solutions consist of managed code(C#) and others have unmanaged code(C++). Methods written in C# communicate with the ones written in C++. I am trying to trace the dependencies between these various functions and I thought setting breakpoints on the solution consisting my C++ functions. One of the C# solutions have the startup project. I run this solution in debug mode with the expectation that the breakpoints in my unmanaged code will be hit but nothing really happens. Can somebody guide me through the process of debugging mixed applications such as these using the Visual Studi开发者_StackOverflow社区o IDE?
Thanks
By default a managed project will only start the debugger with managed debugging enabled. It doesn't consider that there are unmanaged projects in the same solution. In order to debug both you need to explicitly enable unmanaged code debugging.
- Right Click on the project and select properties
- Go to the Debug tab
- Check "Enable Unmanaged code debugging"
- Go to the Managed project property.
- Right click on it and go to the debug tab.
- There is a section called enable debugger under that section.
- Check the "Enable native code debugging" option
then you will be able to debug the native code. Good luck !!!
Please refer the below attached image highlighted with red rectangle.
In Visual Studio 2019, the option is enabled as follows:
- Right Click on the project and selecting properties
- Go to the Debugging submenu under Configuration
- From the Debugger Type drop down values select Mixed
精彩评论