English 中文(简体)
VisualStudio C++ how to make debuginfo reliable in releasemode
原标题:

I ve got a little problem. my application runs without problems in Debug mode, but crashes in release mode. I can t track down the problem, because in release mode all the Debuginfo appears to be nonsense. However - sometimes in other projects the Debug output is also valid in release mode. What projectsettings do I have to change such that the Debug output is valid in release?

thanks!

最佳回答

Even in Release mode "Generate Debug Info" should be set to "Yes" per default. The problem is that when you re running in Release Mode the compiler optimizes the code which makes it hard for the debugger to display the correct values of variables (it may for instance choose to keep some variables in registers etc.).

There s not much to be done about this, you could always turn off optimization either globally or around a specific function using #pragma optimize ("", off) / #pragma optimize ("", on) around it but this essentially means you re running in Debug Mode again and the crash will probably go away...

If you re comfortable with reading assembly code, you can switch over to disassembly mode and through a little investigation find the correct values of your variables.

问题回答

Likely, you re making use of uninitialized variables.

In your project settings, set

Configuration Properties > C/C++ > General > Debug Information Format

to Program Database

Then, set

Configuration Properties > Linker > Debugging > Generate Debug Info

to Yes

The good old "debugging with traces" approach may help you having a rough idea of where the problem is. Then read this portion of the code again and chase uninitialized variables.





相关问题
building .net applications without Visual Studio

I m interested to hear about people working with building .net applications using MSBuild, NAnt or similar tools. What are you using, why are you using it instead of the VS IDE? I like to use ...

Tips for debugging a made-for-linux application on windows?

I m trying to find the source of a bug I have found in an open-source application. I have managed to get a build up and running on my Windows machine, but I m having trouble finding the spot in the ...

Visual Studio 2010 Beta 2: Can I print in color?

I have to turn in a hard copy of some code with an assignment. Is there any way in Visual Studio 2010 to print C# source code with syntax highlighting? PS: The assignment is solving a math problem, ...

Set Select command in code

On button Click I want to Set the Select command of a Gridview. I do this and then databind the grid but it doesn t work. What am i doing wrong? protected void bttnView_Click(object sender, ...

WPF design-time context menu

I am trying to create a custom wpf control, I m wondering how I can add some design-time features. I ve googled and can t seem to get to my goal. So here s my simple question, how can I add an entry ...

热门标签