How to compile in 4 easy steps:

1) Make sure you've downloaded the WTL 7.1 Package and have all the files in it in your include path.
   You can find it on the dc++ sourceforge site. Mind the version.

2) Make sure you have stlport installed and that it's included _before_ the standard vc directories
   Use the one supplied on the dc++ sourceforge page (do not use the one from www.stlport.org unless 
   you know what you're doing, I've modified it a little bit). Mind the version (download the latest
   one from the source extras).
   
   * Note; This step may not be required if you use MSVC 7.x, i e it might work without STLPort,
     but I don't recommend this as it's completely untested, and the original distribution uses it.
     See client\config.h for further details

3) Make sure you have a fairly recent platform sdk (November 2001 or newer has worked for me)
   The sdk is freely available from ms: http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
   You need the core sdk at least (not the 64-bit edition...)
   Make sure that this sdk is included _before_ the standard vc directories.

4) Open the project workspace and press your build button.

Note 1;	you'll probably get a whole bunch of warnings, ignore those, it's a bug in the compiler...

Note 2;	I now use vc7.1 (2003). VC7.0 and VC6 is no longer supported.

Note 3;	You'll need DBGHELP.dll from the binary distribution unless you're using WinXP, otherwise 
        you'll get errors saying symbols are missing when running your compiled executable. My copy 
        says version 5.1.2600.1106 right now.

Note 4;	If you have problems, read the forum posts before posting. Somebody else has probably done your mistake
	already.

By the way, with doxygen, graphviz and some luck you can use the supplied doxygen configuration file
to generate some nice docs...just check that the paths in doxyfile are correct (graphviz)...


Submitting patches

If you think you've done something that more people could use, you can always submit a patch for inclusion in the
original distribution. I will then consider whether I like the patch or not based on things that might seem to be 
completely random, which just might be the case. Popular reasons for rejecting a patch include, but are not limited to,
ugly code, abusable features, feature that I don't like that bloat the applications and incompatibility with other 
modifications I've already done. 
To increase the chances of your patch being accepted, mail them to me (j_s@telia.com) as diffs against the latest 
code you can find (for the moment, it should be the cvs repository on sourceforge, but sometimes I forget to 
update it, so check the source code distribution of the latest release as well...). You can find a lot of 
information about diff and patch by googling for it. I like unified format (diff -uNr). 
By submitting a patch, you agree to that I get copyright of it. This to avoid stupid situations later on where
the copyright is split out over a million people, each of which could stop further distribution of DC++. If you don't
like this, start your own distribtution, if you're lucky it might become more popular than the original =).