# Compiling and Debugging WndTabs

## Installing the WndTabs Sources

The WndTabs source code is available as a separate installation program. You may download this program from the WndTabs download page. You can also access the live development code through the WndTabs CVS Server.

## Compiling - The Pitfalls

#### HTML Help

The WndTabs project file includes the HTML Help Project file (WndTabs.hhp) which creates this help file using the HTML Help Compiler (hhc.exe). If you don't have the HTML Help Authoring System installed on your system, you will not be able to compile the WndTabs project in it's default configuration.

Two options are available to remedy the situation:

1. Download the free HTML Help Authoring System from Microsoft from this URL: http://msdn.microsoft.com/library/en-us/htmlhelp/html/vsconHH1Start.asp
   - or -
2. Exclude WndTabs.hhp from the build process, and simply use the .CHM file that came with the distribution. To exclude WndTabs.hhp, select Project|Settings, and highlight WndTabs.hhp in the file list. On the right side of the dialog, select the "General" tab, and check the box titled "Exclude file from build".

#### BCG Library

WndTabs uses a custom version of the BCG library (based on version 4.74 of the library). This library is provided in precompiled form (including header files) with the WndTabs source code installer.
If you wish to access the source code to the modified BCG, you may do so by downloading it from the WndTabs CVS server.

## Debugging DevStudio Add-Ins

To debug a DevStudio Add-In, you must load DevStudio with the Add-In disabled (i.e., go to Tools|Customize|Add-Ins and disable the add-in). When you load DevStudio the next time, the add-in will not be in memory, so you will be able to overwrite the .dll file when you compile the project.

After the compilation, execute the program. Since the add-in is nothing more than a .dll, you will be prompted for a program to run. Specify the full path to MSDEV.EXE. You'll get a warning message specifying that your program has no debugging information, because MSDEV.EXE itself has none. This warning can be safely ignored.

Once MSDEV.EXE is running under the debugger, you can reactivate the add-in from the Tools|Customize|Add-Ins dialog. The add-in will be loaded with its debugging information (if you compiled a Debug build), and you should be able to set breakpoints and debug at will. The next time you run MSDEV.EXE from the project workspace, the add-in will get loaded with it automatically.