I've successfully compiled PyCHM on Windows with Visual Studio 2008 and I've documented the whole process in a blog post that could be found here: http://sylvainprat.blogspot.com/2010/07/compiling-pychm-on-windows.html.
One part of the process involve patching the extra.c file so that it compiles fine with Visual Studio. It would be nice to include this fixe in the distribution ;) It could be something like that:
#define strncasecmp _strnicmp
#define strcasecmp _stricmp
#define inline __inline
I think that strings.h could be replaced by string.h in linux also, so the code I just wrote may be simplified