How to Setup Debugging & Enable 'edit And Continue' in Visual Studio
aka: How to Setup Debugging & Enable 'edit And Continue' in Visual Studio 2008
Update 2014-9-27:
Updated the guide to remove ace.dll requirement due to BOOST support added in rev 3ba49277d
NOTICE: For now you need to disable linker option /SAFESEH or it will ignore the /EDITANDCONTINUE option that gets set when you change the PDB type.
To do this:
Make sure you are on DEBUG configuration
Right click on a project (eg: authserver) and select Properties
Expand the Linker category
Click on Advanced
Scroll down to Image Has Safe Exception Handlers
Set it to NO
Click Apply
Repeat for all other projects in the solution. If a project doesn't have a Linker category, skip it
Update History:
Some people have reported that this does not work for 64 bit applications.
I struggled with this for a bit and now that I figured it out, I thought I'd pass it along
The Guide:
Before you start, compile the solution in Debug mode at least once to get 'ace.dll' and then copy all the following (required) DLLs to any folder, you will point Visual Studio to this later:
ace.dll - Not required for sources after rev 3ba49277d due to BOOST support
libeay32.dll
libmysql.dll
ssleay32.dll
* Note: 32-bit names listed, 64-bit names will most likely be different (you should know what to look for)
Step 1: Seting up the projects Step 2: Setting up the debug executable info
Step 3: Enable 'edit and continue' (and other 'Debugging' menu settings)
That's it. Now when you choose 'Debug -> Start Debugging (F5)', Visual Studio will launch both the authserver and worldserver and when you break execution and make changes, the 'apply code changes' will be available allowing you to 'edit and continue' instead of having to stop and recompile.
Note: There are some cases you can't use 'edit and continue' Supported Code Changes Precompiled Header Limitations
For more information, see here Edit and Continue (Visual C++) Some people have reported that this does not work for 64 bit applications.