Introduction

Help Viewer 2 is the help system for Visual Studio 11 and also Windows 8 help. At the time of writing this site and code examples are based on Beta release, so please feel free to send me any corrections.

Help Viewer 2.0 is improved significantly over Help Viewer 1.0/1.1 (the help system for VS 10 / VS 10 SP1) in both design and features, however your .mshc help files will install on either system without change.

Unlike HV1, the HV2 runtime API does not return rendered HTML. Instead it returns the raw HTML as packaged in your .mshc help file. It's up to you to render this. Use our SDK code, or you can use the renderer provided by Microsoft.VisualStudio.Help.dll (for VS content this is best as you get all the expansion sections and all the trimmings).

Note: Executables are .NET and as such can easily be referenced by C# and VB .NET applications and decompiled using utilities such as Reflector. DLLs are also registered ??? so that win32 apps can access them via COM.

Microsoft.VisualStudio.Help.dll is not dependent on the other help assemblies, so in theory you could ship it with your application (you need to check with Microsoft on the legality of this). The image (right) shows the basic .NET4 (or .NET 4.5 ???) dependencies (captured from Reflector.exe).

VS Help Viewer uses a protocol ms-xhelp:/// which is local to the view (does not extend to the browsers or other apps as in HV1). We provide example code that demonstrates how to setup a pluggable protocol in your own application.

Windows 8 Implementation

Windows 8 ships the file Windows.Help.Runtime.dll which has the same COM interface as the VS API file Microsoft.VisualStudio.Help.Runtime.dll. The file is installed and registered ??? in the Windows 8 GAC. To a path like this:

Note: There is "no renderer" provided like with VS so you will need to render the HTML yourself (see our SDK example code). The Windows help viewer does it's own rendering.

Also there is no Help Content Manager shipped with Windows 8 (see the 3 different catalog types you can use).

The Windows 8 help viewer window is C:\Windows\HelpPane.exe. This is probably of little use to us as it does not support TOC/Index/Favorites. It's job is simply to display search results from the the following system help catalogs.