Announcing March 2007 Sandcastle CTP

I am excited to announce the availability of March 2007 CTP version for Sandcastle. The latest version is now available for download at My sincere thanks to the Sandcastle user community and to Eric Woodruff for providing us with valuable feedback.

What’s new in this version:

  1. Added 4 new transforms under production tools folder. They are ApplyVSDocModel.Xsl, ApplyPrototypeDocModel.xsl, CreateVSToc.xsl and CreatePrototypeToc.xsl.

  2. Deleted 3 transforms under production tools folder. They are AddOverloads.xsl, ReflectionToChmContents.xsl and ReflectionToHxSContnets.xsl.

  3. Added Build_sandcastle.bat under Examples/Sandcastle folder. This batch file will generate chm/Hxs build from test.cs. Usage – Build_sandcastle.bat [vs2005/prototype].

  4. Perf improvements during CHM generation. Please see

Changes in this version:

  1. Changes to steps in CHM/HxS generation process. Please see Build_sandcastle.bat under Examples/Sandcastle folder

  2. Added 4 new transforms under production tools folder. They are ApplyVSDocModel.Xsl, ApplyPrototypeDocModel.xsl, CreateVSToc.xsl and CreatePrototypeToc.xsl.

  3. Deleted 3 transforms under production tools folder. They are AddOverloads.xsl, ReflectionToChmContents.xsl and ReflectionToHxSContnets.xsl.

Issues fixed in this version (Reported by Customers):

1.    Sandcastle: MSHelp Index, apiname attributes: namespace and type name of members isn’t showing up

2.    Sandcastle: MSHelp F Index does not have an entry for typename.membername

3.    Sandcastle:Issues with Sandcastle and .NETCF

4.    Sandcastle: ApplyVsDocModel – Missing items: constructorsTopicTitle, membersTopicTitle, etc.

5.    Sandcastle: not showing the “obsolete” messages for items with an ObsoleteAttribute.

6.    Sandcastle: The <br/> and <hr/> HTML tags are getting stripped in Prototype transforms

7.    Sandcastle:  error message of ResolveReferenceLinksComponent is not correct

8.    Sandcastle: property keyword is missing in managed cpp syntax

9.    Sandcastle: apiIcon template issue

10.  Sandcastle: Javascript error on members page in vs2005 transform

11.  Sandcastle: December CTP – Wrong icons shown on member pages

12.  Sandcastle: suggestion for GetMsdnUrl()  method

13.  Sandcastle: MrefBuilder fails when /internal+ switch is used on

14.  Sandcastle: The reference_content.xml file is missing some keys

15.  Sandcastle: syntax for Indexed Properties is not correct in managed cpp

16.  Sandcastle: When using firefox the method signatures is being displayed in very small font size

17.  Sandcastle: Is it possible to get rid of fully qualified type names?

18.  Sandcastle: February CTP should have a version number higher than 2.2.61208.0

19.  Sandcastle:Split the big framework reflection data file per assembly for shipping.

20.  Sandcastle:CHM-table of contents does not show class members when applying the ApplyVSDocModel.xls

21.  Sandcastle: Ignore CompilerGenerated attribute

22.  Sandcastle: The border of empty <td> elements are not rendered (IE issue).

23.  Sandcastle: parameter types not shown if it is an array (vs2005 theme)

24.  Sandcastle: Some sandcastle images don’t have a transparent background.

25.  Sandcastle: extended character not supported in productTitle

26.  Sandcastle: Update the setup script for MSI to get new files and changes.

27.  Sandcastle:  bug in K-keyword generation logic

28.  Sandcastle: tables with icons have “Icon” as column header

29.  Sandcastle: member Syntax section: Visual Basic (Usage) is not showing (looks like there is no generator for that, yet)

30.  Sandcastle: MRefBuilder Namespace Ripping Still Broken

31.  Sandcastle: performance issue related to ReflectionToChmContents.xsl

32.  Sandcastle: Mref ripping feature doesn’t work

33.  Sandcastle: SandcastleGUI changes the table of contents displaying all public innerclasses at the same level as the parent class.

34.  Sandcastle: html page is too wide in firefox

35.  Sandcastle: Provide support for code Example

36.  Sandcastle: MSHelp DevLang, codelang, Technology attributes are not present

37.  Sandcastle:F1 context sensitive help does not work for sandcastle.

38.  Sandcastle: Check in changeset of TocToChmContents.xsl into main tree

39.  Sandcastle: Inherited from self info is showing up (vs2005 theme)

40.  Sandcastle: Transform changes for Prototype and VS2005

Issues fixed in this version (Features and Bugs as a part of Orcas Beta 1):

1.    MrefBuilder fails against the Orcas Cpref Assemblies

2.    # in pathname makes HHC.EXE generate bad CHM-file

3.    DCR: Change “C++” to “Visual C++” in managed reference topic syntax blocks, language filter and code blocks

4.    BuildAssembler: If the output path does not exist as specified in the .config, tool should create it for you

5.    VTP: K keywords containing angle brackets < or > do not appear in Index

6.    VTP: Code displayed incorrectly (on one line)

7.    Overloads pages do not include boilerplate text for overloads supported by the .NET Compact Framework

8.    Dynamic generated links show up twice, with one working and one broken link

9.    Index item broken in half; second half appears as subindex of first half; first half goes to Empty Index Entry

10.  Internal Only boilerplate text does not cascade to members when set at type level

11.  Sandcastle:Split the big framework reflection data file per assembly for shipping.

12.  Square brackets are not showing properly in syntax section for VB

13.  Mref Attached Event syntax is wrong in all non XAML syntaxes (regression)

14.  Mref Attached Property syntax is wrong in all non XAML syntaxes (regression)

15.  Index shows “unattached” properties

16.  Index does not always support navigation to type members

17.  J# compiler options and operators are missing from index

18.  Link text is not correct in ‘see also/other resource’

19.  See Also section links not sorted under subheadings

20.  Authored “XAML Attribute Usage” sections of Attached Property and Attached Event pages do not appear

21.  No reflection going on for NETCF Orcas assemblies

22.  See Also does not have subdivisions

23.  Text should be bold in the “Inheritance Hierarchy” sections of managed ref

24.  The word “Namespace” appearing in TOC instead of the actual namespace name.

25.  URL of topics have GUID in them.

26.  Classes in TOC appear out of order

27.  “Inheritance Hierarchy” appearing after “Thread Safety” in managed ref

28.  Attributes appearing above declarations in managed ref.

29.  Bold appearing in Syntax section of managed ref

30.  copy code text missing

31.  Remove Single Bullet

32.  Missing Header text for a section

33.  Link Text in table appears bold

34.  in-topic links are not displaying as links

35.  Gray box with link options appears after clicking link

36.  & in VB sample code is replaced with &amp;

37.  < and > in Code Reference in List 1 are replaced with &lt; and &gt;

38.  Icon display problems

39.  Clicking Link creates Popup

40.  Interface member declarative syntax now has “abstract” keywording – bug or feature?

41.  Method member appearing twice in cpref TOC

42.  Graphic icons missing on the page

43.  Property members appearing twice in cpref TOC

44.  Dynamic links don’t work

45.  Members tables are not showing protected internal members

46.  Keyword “true” should be “True” for VB

47.  Missing graphics on some topics

48.  XAML snippets appear twice

49.  Titles of member tables have swapped text for “Icon” and “Type” columns

50.  Index entries for members are missing for many CLR types

51.  In managed ref C++ code examples, member-selection operator -> renders as -&gt;

52.  Manifest: language filter not appearing

53.  When filter is set to Visual C#, the System.Linq* namespaces disappear from the Class Library Reference

54.  Microsoft.VisualStudio.Profiler Namespace missing protected methods and properties

55.  Configuration schema hierarchies not displaying hierarchically

56.  Unable to distinguish between topics in Index Results pane

57.  Incorrect Version Information for new types

58.  Managed reference missing running header text

59.  Attached property and attached event topics appear twice in TOC

60.  event table missing from Events topics

61.  wrong column headings in member list topics

62.  Angle brackets for C# generic types are incorrectly displayed in code snippets

63.  All APIs supported by 3.5 package should indicate 3.5 in Version section

64.  mref topics need frlrf A keywords

65.  link resolution failure warnings should identify topic in which the error occurred

66.  Parameters: type line is not correct for generics

67.  Bold text has taken over topic

68.  HostProtectionAttribute boilerplate

69.  Indices for some classes are missing

70.  “Obsolete” words are gone for all obsolete types.

71.  Rendering  Empty XAML syntax blocks

72.  Assembly information is missing on namespace pages

73.  Version info incorrect for WPF assemblies on all pages

74.  Odd indentation in rendering of XAML syntax when it is text vs. code

75.  BuildAssembler: Namespace top-level pages are dispaying the

76.  Constructor node incorrectly displays at the end of member list topics

77.  problem with constructors in the TOC

78.  XSLTTransform: When building the HXT for Orcas, System.Data.Entity.dll and members are not being added

79.  Manifold test Builds: brackets in code samples rendering as escape characters

80.  Manifold builds: copy code produces script error on hover

81.  NSR “Example” link throws script error

82.  namespace wording in topic titles

83.  nested types not in correct alpha location

84.  method names always include param list

85.  param lists use param name, should be param type

86.  generic apis have no indicator of genericness

87.  HxComp: Error HXC3031: A group of keywords for a single Help link or KTable exceeds 4,096 bytes.

88.  XML Namespace info missing

89.  Version Info section: missing data

90.  Namespace/Assembly lines incorrect on type topics and missing on member topics

91.  In Parameters section, param names followed by empty parens

92.  Return Value section is missing on method topics

93.  missing Property Value section

94.  mref topics need MSHelp:RLTitle for search results

95.  Phoenix Reference CHM – Class name not listed

96.  See Also autogenerated links should have descriptor, e.g. “System.Window Namespace”, not just “System.Window”

97.  Specialized type pages (derived from generics) not showing

98.  Inheritance Hierarchy for classes derived from generic specialization shows incorrect link text for ancestor class

99.  Method names in links and NSR title should show param list only for overloads

100.               param lists in titles and tocs should use param type, not param name

101.               Manifold Build produces only part of hyperlink text in a hrefs

102.               Syntax boilerplate tokens not resolved, e.g. UnsupportedGeneric_JSharp

103.               Intro boilerplate missing on member list topics

104.               Member lists missing CF and XNA icons

105.               Missing Type Parameter section for generic types

106.               XSLTransform: XLSTs: Default Namespace should be labelled

107.               BuildAssembler.SharedComponent: If a USC file is not well-formed, we may want to log it and move on to at least get a build

108.               BuildAssembler: SharedContentComponent: Tool is not expanding the PlatformNote and Assembly SSC items

109.               BuildAssembler: CopyFromIndexComponent does not recursively search for the files as specified via the ./index/data@files

110.               BuildAssembler: XSLTs: Syntax block for Visual Basic (Declaration) missing “Visual Basic” text

111.               BuildAssembler / VersionBuilder: XSLT: Running the steps for versioning, it appears that basic text is appearing on the built pages

112.               Sandcastle: DXROOT is not system environment variable

113.               Sandcastle: virtual keyword is not in the right place for managed cpp property syntax

114.               MrefBuilder addin creates attached property node with incorrect content

115.               MrefBuilder addin creates attached event node with incorrect content

116.               XSLTransform: XSLT (DocModelTOCFormat) for building HXT for CHM is causing Out of Memory for Orcas (WinSDK will be bigger)

117.               XAML in page filtering behavior

118.               Dependency Property Information sections

119.               Routed Event Information sections

120.               autogenerated XAML syntax boilerplate for classes and properties

121.               BuildAssembler: XSLT -> Type page headings should be qualified (ex: BuildPropertyGroupCollection.CopyTo Method)

122.               BuildAssembler: XSLT -> Namespace and Assembly information missing from top of member pages

123.               need custom sections (XAML Syntax, Dependency Property, Event Routing)

124.               need to support Attached Properties

125.               need to support Attached Events

126.               Syntax color coding applied oddly to text in syntax blocks

127.               Missing technology qualifiers for the index

128.               BuildAssembler: ResolveArtLinksComponent should not terminate if output directory does not eixt

129.               BuildAssembler: TransformComponent -> Support for VisualBasicDeclarationSyntax needed

130.               BuildAssembler: TransformComponent -> Support for CPlusPlusDeclarationSyntax

131.               BuildAssembler: What exactly does Warn: ResolveReferenceLinksComponent message mean?

132.               need links in NSR to See Also, Example, Members

133.               Need multiple assembly info for duplicates like Theme APIs

134.               Need to support all required keywords (xml data island attributes)

135.               Terms in Inheritance Hierarchy section need to have fully qualified names

136.               Need support for “Version Information” section

137.               Namespace topics have a syntax block section; not part of the original design

138.               UCER Style not appearing in build

139.               XAML Syntax Autogeneration & Authored Section Overrides

140.               No separate Derived Classes topic for inheritance hierarchy section

141.               Missing Visual Basic (Usage) syntax

142.               Missing JScript syntax

143.               no Index entries for mref build

144.               no member list topics, e.g. Methods, Properties, etc.

145.               no member list filtering, e.g. for inherited, CF, XNA, protected

146.               Manifold BuildAssembler: If the output path does not exist as specified in the .config, tool should create it for you

147.               TextureLoader.FromFile has not been updating in any of the builds

148.               Environment variable is not parsed in ExampleComponent

149.               Sandcastle Nov CTP – <list type=”number”> generated as bullet list

150.               Examples code is not well formatted in vs2005 transform

151.               Escape Characters in Codesnippet.xml are not converted back to original characters

152.               Manifold ExampleComponent drops every other code sample

153.               Manifold ExampleComponent double escapes HTML entities

154.               DS Bug: Enumeration members are not ordered by value in the built page, they are ordered alphabetically.

155.               Manifold Explicit Interface Implements rendering behavior does not follow CPLT guidelines

156.               The requirements section on WPF reference pages should include XML namespace information

157.               SandCastle:Presentation\Prototype\Scripts\StyleUtilities.js file that causes pages to throw JavaScript errors when it tries to access a style sheet with an ms-help URL

158.               Sandcastle: CHM tab Index are untranslated.

159.               Ability to rip NS, Types and members from Reflection.xml

160.               BuildAssembler: .config (BuildComponents.dll) – SyntaxGenerators.dll – Support for XAML syntax

161.               Syntax Builder VB Syntax: Class name in Interface implementation example should be in PascalCase.

162.               Syntax Builder VB Syntax: There should be a newline between the parameter declarations and method call for Method Usage Syntax

163.               Syntax Builder UETP: Syntax for generic types that implement generic interfaces is lacking the generic interfaces

164.               Syntax Builder Generics: Property marked as virtual by class implementing a generic interface

165.               Syntax Builder UETP: VB, C#, and C++ syntax for properties of explicit interface implementations on generic classes is incorrect

166.               Syntax Builder NDP: UETP: Bad link in VB usage syntax for some explicit interface implementations on System.Windows.Forms.Control class

167.               Syntax Attribute filtering not working

168.               Visual Basic Usage syntax is missing boilerplate for static classes

169.               Syntax Builder interface implementation should be marked virtual only if the keywork “final” does not appear in its IL;

170.               Syntax Builder Add support for Operator and Type Conversion methods

171.               Syntax Builder ConditionalAttribute should not be displayed in C++ syntax section because it is ignored by the compiler

172.               Syntax Builder – links to HIS instead of MSDN for DataRelationCollection and DataTableCollection

173.               Syntax Builder generates incorrect MSDN type links for ADODB types and MSXMLLib.DOMDocument

174.               Syntax Builder Generics: Missing syntax block for type that inherits from generic ICollection

175.               Span class=UI needs to be bolded

176.               Tables too wide

177.               The Abstract/Description attribute is missing

178.               Investigate missing index keywords in dv_fxtools?

179.               Blue text in topic

180.               “Copy Code” Text missing next to the copy code icon

181.               Content Dropout: Namespace topics need to include text from both Summary and Remarks

182.               namespace/Assembly note should not be in namespace topics

183.               Poor XAML “Not Applicable” notes layout

184.               K and F Index transforms for managed ref content are not rendering specific enough information

185.               See Also section has formatting problem on namespaces pages

186.               need XAML F-keywords for F1 Help

187.               Some art in tables drops out


Issues not fixed in this version:

1.    CHM is missing state –

2.    Bug: Interihance Hierarchy VS2005 incorrect when using inner classes due to issue in BuildComponents.


I would love to hear your feedback about this CTP. Cheers.



Comments (15)

  1. gfraiteur says:

    Excellent! It looks really nice.

    It took only 2 hours to upgrade all scripts and files for the new releases ( is upgraded as well).

    A (minor) problem: the TOC entry of methods that have overloads do not display correctly. The ‘intrinsic’ parameter types are not displayed at all and maybe in other cases.

    Thank you!


  2. hecktarzuli says:

    Unless I’m doing something wrong, I no longer see method or parameter comments?  I do see parameter names and types however.

  3. KidN says:

    Awesome!!!. Thank you.

    But I have a problem. I tried to run the batch file with "/internal+" and I get "BuildAssembler" error and when I click "Don’t Send" I get "XSLTransformer" error and the help file is created with empty stuff.

    I added a private method so that I can see the documentation. But I’m not.

    Am I missing something here? Any help would be appreciated.

  4. aram says:

    The method and parameter comments should appear and I am very sure there is some issue with your config files. Are you including comments file location in your config?


  5. aram says:

    It looks like we have a regression in Build Assembler with /internal+ option. I am sorry about this and we will provide a technical refresh with a fix for this.


  6. hecktarzuli says:

    Got it fixed, thank you.  — Looks great!

  7. KidN says:

    I’m still not getting the method and parameter comments. Would you please tell me in detail what needs to be done to have those comments pop up.


  8. KidN says:

    Got the Method and parameter comments fixed. Thank you.


  9. Wriju's BLOG says:

    What is Sandcastle? Sandcastle documentation compilers enable managed class library developers throughout

  10. CoqBlog says:

    Une nouvelle CTP de Sandcastle est disponible . Au menu : What’s new in this version: Added 4 new transforms

  11. RichScip says:

    I kind of got the impression from some of the comments here that the /internal+ option has been fixed, but I still cannot create help files using that option.  I get the BuildAssembler and XSLTransformer errors.  Any timeframe for a fix?


  12. JimEH says:

    I’ve just upgraded to the Sandcastle March CTP and Sandcastle Help File Builder, and in general, they’re great, but I’m seeing a bunch of new warnings.

    First, if I have "show missing summaries" turned on in SHFB, I get:

    "Warn: ShowMissingComponent: Missing <summary> documentation…"

    for every class for the new AllMembers, Methods, and Properties pages. Those pages pick up the class summary, so the warnings appear to be spurious, but I have to turn off "show missing summaries" to keep the "missing" messages from appearing in my help output.

    Then, when generating the HxS help, for each of my enums, I get:

    Warning HXC6042: File (html filename) Line 1, Char 1137: <MSHelp:Keyword> tag requires attribute Term.

    Warning HXC6031: File (html filename) Line 1, Char 1137: No term defined in <MsHelp:Keyword>.

    I haven’t been able to find anything that I can add to my enum XML doc tags to address this.

    (Hmm, I also just noticed that the table heading for enum value names now reads "Class", whereas before it was the correct "Member".)

    None of these are showstoppers, but I’d prefer not to have to ignore warnings.


  13. I stumbled across some information on "Sandcastle" this morning. Sandcastle creates documentation for

  14. doctordude says:

    When I execute MRefBuilder it give me errors of other assemblies references by my current assembly.

    Copyright c Microsoft 2006

    Error: Unresolved assembly reference: Radixx.Types (Radixx.Types, Version=, Culture=neutral, PublicKeyToken=null)

    required by ASSEMBLYNAME.

    What Am I missing???

  15. CCNetConfig says:

    Announcing March 2007 Sandcastle CTP