10

I am developing a WinForms application and would like to integrate help into it. In the past I integrated .chm help files.

Regarding .chm files, this Wiki article states:

In 2002, Microsoft announced security risks associated with the .CHM format, as well as security bulletins and patches. They have since announced their intentions not to develop the .CHM format further.

From what I have read, Microsoft Help 2.x was the help engine used in VS 2008 and Office 2007 using .hxs file extension help files.

What is used in Office 2010? What is the recommended help file format to be used?

Update:

I found the following MSDN article with helpful information on this topic:

Application Compatibility: Help Engine Support

Elan
  • 5,548
  • 10
  • 58
  • 83

2 Answers2

2

Sandcastle - http://sandcastle.codeplex.com/ - is widely used. It has multiple output formats, including the generation of a website which you could publicly or privately host for your application users, allowing you to make updates as needed without needing to roll out new help files to all users individually.

You can also use Sandcastle to generate files which integrate with the MS help file viewer built into Windows. I don't know if this is "officially" the best method, but it works well.

The only caveat with Sandcastle is that it has a bit of a learning curve.

Also of interest: http://en.wikipedia.org/wiki/Microsoft_Assistance_Markup_Language. MAML defines a common schema for describing a very wide variety of help/documentation scenarios. MAML allows you to document end user functionality as well as API-level tasks. Depending on your audience, this may be of significant value. Sandcastle includes many MAML templates.

Tim Medora
  • 51,363
  • 11
  • 111
  • 149
  • That's for API documenation; it sounds like he wants end-user documentation. – SLaks Nov 23 '11 at 18:05
  • 1
    @SLaks - "The MAML authoring structure is divided into segments related to a type of content: conceptual, FAQ, glossary, procedure, reference, reusable content, task, troubleshooting, and tutorial." You can build pretty nice end-user documentation using MAML and Sandcastle. There certainly may be a better tool for end-user docs, but you can create structured articles using MAML that have nothing to do with code. Unlike auto-generated API docs, you have to create those articles by hand, so it can be time-consuming and requires a basic knowledge of the markup. – Tim Medora Nov 23 '11 at 18:10
  • Isn't that like saying that you can use any HTML authoring tools to create the several html help formats? There is a lot of manual work involved. Since the authoring tool does not really reflect an application help structure, but is merely used for its markup editor – Marco van de Voort Dec 21 '11 at 09:25
  • @MarcovandeVoort - MAML is designed to represent help file data, so it is semantically far more specific than HTML. Sandcastle automates much of the "plumbing" like navigation and link management; it also allows you to define the building blocks and then create several completely different output formats. But the thing lacking is a good WYSIWYG MAML editor. I haven't found one yet. I would be interested to know if one exists. – Tim Medora Dec 21 '11 at 15:02
1

The recommended one is probably the Assistance Platform client (HelpPane.exe), with .h1s extensions which is default support by Vista and W7, and also in recent Office versions

Afaik h2s (and now html3) is only support by VS.

But since Asistance Platform is VIsta+, if you still need to support XP, you are stuck with CHM

Marco van de Voort
  • 24,435
  • 5
  • 52
  • 86
  • 2
    From the Help Pane API Overview: "The Help Pane API can only be used to display the Windows Help content set. It ... cannot be used by third-party programs." – Dour High Arch Nov 30 '11 at 01:57