Part 2: Sandcastle Update


Per my earlier blog, I posted the source code for Sandcastle at This will enable you to browse the source code or access it using the methods described here .

The source code posted is the same version published previously in a ZIP format. With the latest release fixed the following issues reported in the Zip format:

· I did not provide a SLN file for the projects. You could create your own, but it would be more convenient to provide one in the source distribution.

· In the SLN file created from the previous source distribution, users encountered the following when trying to build this way:

o Each project has TFS source control information which is not valid for people outside my team. This will be stripped for the source distribution.

o Most projects specify a strong name key file which doesn't exist in the package. The project files should disable signing, or a dummy key.snk should be provided.

o The MoreComponents project doesn't build; has errors such as "'Microsoft.Ddue.Tools.BuildComponent' does not contain a constructor that takes '1' arguments". It seems that this is a non-essential project and maybe should not be included at all.

o The MrefBuilderStatic project doesn't build; has errors such as "The type or namespace name 'RootFilter' could not be found (are you missing a using directive or an assembly reference?)". I will remove this project.

o BuildAssemblerConsole references the CommandLine project at an incorrect path.

o The BuildAssembler and BuildAssemblerConsole projects appear to be duplicates and BuildAssemblerConsole doesn't build.

· After unloading the problematic projects, users able to get everything built. Unfortunately, there are 115 warnings in the build. These should really be fixed as a best practice.

· There are lots of Code Analysis (FxCop) warnings. We should set a good example by eliminating such warnings from the code we ship.

· There are many files that pertain to the NT build system and should be excluded from the source distribution (makefile,, placefile, etc.).


Hope this helps. Cheers.