Search code examples
htmldocxchmsandcastlehelp-files

Creating various help formats in a single build in Sandcastle Help File Builder


I'm trying to use Sandcastle Help File Builder to build documentation from my C# code base.

What I'd like to do is generate both the CHM (compiled HTML help file), stand-alone HTML help files, and also OpenXml *.docx document from a codebase.

I cannot seem to find a set of config settings that allows me to do this in a single step. I've installed the Visual Studio package, and I can edit the project properties of the Sandcastle project file from within VS.

If I choose "HTML Help 1 (chm)", "Open XML (docx)" and "Website (HTML/ASP.NET)" as the "Build these help formats" from my project properties / "Build" tab:

enter image description here

I'm facing this problem:

if I pick "VS2013" from the "Help file" / "Presentation style" dropdown list, then I can build the CHM and the HTML files just fine - but the *.docx isn't built, throwing this error:

The selected presentation style (VS2013) does not support one or more of the selected help file formats. Supported formats: HtmlHelp1, MSHelp2, MSHelpViewer, Website

and if I switch to "Presentation style" = "Open XML", then I get

The selected presentation style (OpenXML) does not support one or more of the selected help file formats. Supported formats: OpenXml

So is there really no setting that can build all three formats (HTML 1 = CHM, HTML/ASP.NET, DOCX) at the same time?

enter image description here

It's rather tedious to have to set those settings manually, build the project, and re-set to the other settings, pick the correct formats, and build again - isn't there a way to tell Sandcastle to use "Presentation style = VS2013" for HTML 1 (CHM) and HTML/ASP.NET, and "Presentation style = Open XML" for the Open XML (*.docx) output, and then just build once ?


Solution

  • In order to be built correctly, the selected presentation style must support all of the selected help file output formats. Certain styles may be written for a specific help file formats or, as in the case of the Prototype and Hana styles, have been deprecated and have not been updated to support later file formats such as MS Help Viewer. Either unselect the unsupported format(s) or choose a different presentation style that does support the selected format(s).

    For SHFB's errors and warnings please see: http://ewsoftware.github.io/SHFB/html/46d1f76e-a97e-4ee6-971c-fdeab725ff09.htm

    To build a CHM file and a WebSite in one step I selected Presentation style VS2013. The third build for OpenXML was done by choosing Open XML Document and I have had to click the icon Build the Help file again.

    For further information please have a lock at: http://broadcast.oreilly.com/2010/09/build-html-documentation-for-y.html#MSBuild and search for Use MSBuild to run Sandcastle from the command line.