The help file builder build engine utilizes the properties and settings from a help file builder MSBuild project (.shfbproj) to compile a help file. The SandcastleHelpFileBuilder.targets file defines the various targets and tasks used to control the build process.
All help file builder related tools and supporting files are located in a folder identified by the SHFBROOT environment variable. The content of the folder is described below. The same folder structure is used for the tools in the NuGet package but the extras, help, schemas, snippets, and platform-specific tools folders are omitted from the package as they are not relevant when used from it. The data folder is also omitted from the tools NuGet package. Reflection data files are supplied in separate packages that can be added to the project based on the framework version of the projects being documented.
The root folder contains the Sandcastle Help File Builder MSBuild targets file.
Components - This folder contains the standard build components, plug-ins, presentation styles, and their supporting files.
Data - This folder contains the framework reflection information files.
Help - This folder contains the Help 1 (CHM) help files for the tools and extras.
net472 - This folder contains the .NET Framework build tools for MSBuild.exe.
netcoreapp3.1 - This folder contains the .NET Core build tools for dotnet.exe.
Schemas - This folder contains the XML schemas for the reflection data file and the MAML topic files.
Snippets - This folder contains Visual Studio snippet files used to insert common block and inline MAML elements into topic files while editing them within Visual Studio.
Templates - This folder contains template project files used by the build engine.
Tools - This folder contains the Windows platform-specific tools (standalone GUI, reflection data manager, help file builder project launcher, and help library manager launcher).
Other information about the build engine will be added at a later date.