Click here to Skip to main content
15,892,059 members
Articles / Operating Systems / Windows

Sandcastle Help File Builder

Rate me:
Please Sign up or sign in to vote.
4.93/5 (131 votes)
17 May 2007Ms-PL45 min read 1M   5.3K   291  
A GUI for creating projects to build help files with Sandcastle and a console mode tool to build them as well.
<html>
<head>
<link rel="stylesheet" type="text/css" href="Styles.css">
<title>The Version Information Component</title>
</head>

<body>

<h2>The Version Information Component</h2>
The version information component is used to extract version information
from the reflection information file and pass it on to the
<code>PostTransformComponent</code> so that it can insert it into the help
topic.  The functionality in this component used to be integrated with the
<code>PostTranformComponent</code> itself.  However, looking up the version
information after transformation of the topic proved to be too slow.  Moving
the lookup so that it occurs before transformation allows for an optimized
lookup of the version information and the whole reflection file does not
need to be loaded thus reducing memory usage for large builds and speeding
up the searches for version information.

<h3>The Version Information Component Configuration</h3>
The following is the default configuration for the version information
component. It should be inserted into the configuration file before the
<code>TransformComponent</code>.  As noted earlier, this component must be
paired with the <code>PostTransformComponent</code> as it is used to insert
the version information into the topic after the transformation to HTML.

<pre lang="xml" title="Example Configuration">
&lt;!-- Version information component configuration.  This must appear
     before the TransformComponent.  See also: PostTransformComponent --&gt;
&lt;component type="SandcastleBuilder.Components.VersionInfoComponent"
  assembly="{@SHFBFolder}SandcastleBuilder.Components.dll"&gt;
    &lt;!-- Reflection information file for version info (required) --&gt;
    &lt;reflectionFile filename="reflection.xml" /&gt;
&lt;/component&gt;
</pre>

The example given above is taken from the Sandcastle Help File Builder's
configuration file.  When used with it, the replacement tag
<code>{@SHFBFolder}</code> is used to insert the help file builder's folder
in the file path.  This is replaced at build time with the appropriate
value.  If using the component in your own build scripts, replace the tag
with a relative or absolute path to the component assembly.  The
<code>reflectionFile</code> element is required and should contain the path
to the reflection information file.

<p/>The help file builder contains the necessary modifications to its
reference content files to add version information.  If you use this
component in your own scripts or build tools, you will need to modify the
Sandcastle reference content files in order to add the version parameter.
To do so, add the text "Version: {2}" to the
<code>locationInformation</code> entry in the <b>reference_content.xml</b>
file for the Prototype and VS2005 styles and the
<code>requirementsAssemblyLayout</code> entry in the
<b>reference_content.xml</b> file for the VS2005 style.

<br/><br/>
<include item="footer"/>

</body>
</html>
<!-- @SortOrder 2 -->

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Microsoft Public License (Ms-PL)


Written By
Software Developer (Senior)
United States United States
Eric Woodruff is an Analyst/Programmer for Spokane County, Washington where he helps develop and support various applications, mainly criminal justice systems, using Windows Forms (C#) and SQL Server as well as some ASP.NET applications.

He is also the author of various open source projects for .NET including:

The Sandcastle Help File Builder - A front end and project management system that lets you build help file projects using Microsoft's Sandcastle documentation tools. It includes a standalone GUI and a package for Visual Studio integration.

Visual Studio Spell Checker - A Visual Studio editor extension that checks the spelling of comments, strings, and plain text as you type or interactively with a tool window. This can be installed via the Visual Studio Gallery.

Image Map Controls - Windows Forms and web server controls that implement image maps.

PDI Library - A complete set of classes that let you have access to all objects, properties, parameter types, and data types as defined by the vCard (RFC 2426), vCalendar, and iCalendar (RFC 2445) specifications. A recurrence engine is also provided that allows you to easily and reliably calculate occurrence dates and times for even the most complex recurrence patterns.

Windows Forms List Controls - A set of extended .NET Windows Forms list controls. The controls include an auto-complete combo box, a multi-column combo box, a user control dropdown combo box, a radio button list, a check box list, a data navigator control, and a data list control (similar in nature to a continuous details section in Microsoft Access or the DataRepeater from VB6).

For more information see http://www.EWoodruff.us

Comments and Discussions