HTML Help - Diagnostics

| Introduction | Security Updates | Checklist |

  Original: 15-May-2005, Updated: 15-May-2005

 

Introduction

This pages attempts to assist users in fixing problems associated with the HTML Help runtime system.

I hope that together this web page and MJ's Diagnostics application will help you fix your help system.

 

Security Updates

In a connected world security updates are now a fact of life. Get used to them. Microsoft have done a mighty job of securing Windows starting with XP SP2 released in Aug 2004. Since then a string of updates have reduced the humble CHM to the status of a humble local help system. It's a shame but we need to move on.

Lets review the main HH security updates. Note that many of the KB articles below contain work-a-rounds to get around the security restrictions. Sometimes necessary. Please use with caution.

  1. CHMs no longer work on servers or the web.
    See KB896054, KB896358, MS05-026 
  2. ActiveX part of HHCTL.OCX disabled on the web. So TOC/Index controls, Shortcuts etc wont work on server or web.
    See MS05-001, KB892675, Other Helpware notes
  3. CHMs with a non-CHM file extension no longer open.
    See KB840315, KB873343, Other Helpware notes
  4. HH Shortcuts restricted on the local PC. This policy was never enabled/enforced by MS. However a network administrator can enable this policy.
    KB810687, MS02-055, Other Helpware notes
  5. HTML Help Shortcuts wont work on a server. (similar to #2).
    KB323180, MS02-055, Other Helpware notes
  6. Downloaded CHMs cannot be opened.
    See KB902225, MS05-026
  7. HH TOC and Index controls in a frame open topics in the wrong frame.
    See KB896905, MS05-026
     

Why HH security updates?

  1. The HH Shortcut command can by design execute anything on your PC.
  2. Similarly the HH WinHelp command can open WinHelp (.HLP) files which have similar security concerns.
  3. The HH viewer displays topics using an embedded Internet Explorer control. IE can of course play host to ActiveX controls etc.

So just like executables only open CHMs that come from a trusted source.

 

Checklist

The HH Shortcut command can be used to run video viewers, open other CHMs, run Camtasia movies... the list goes on. Extremely useful and hard to do without. They are also the biggest target of most HH security updates.

First check - Do you have the Latest Help Runtime Files?

Before we look at specifics make sure you have all the latest patches installed.
Often HH Shortcuts don't work because the help DLLs are not up to date.

1. Hhctrl.ocx 5.2.3790.1194 (Released with Win XP SP2 - Aug 2004)
2. Hhctrl.ocx 5.2.3790.1280 (XP), 5.2.3790.233 (2000/2003) - (Released Nov 2004 as MS05-001 / KB892675)
3. Hhctrl.ocx 5.2.3790.2453 (XP), 5.2.3790.315 (2003), 5.2.3790.309 (2000) - (Released June 2005 as MS05-026 / KB896358)

If your Hhctrl.ocx file version (see Windows System folder eg. c:\windows\system32\) is only 1. or 2. then you need to update to the MS05-02 / KB896358 Patch.

  1. Either do a Windows update via http://update.microsoft.com/
    or
  2. Download and install the KB896358 patch - List KB896358 downloads for all versions of Windows
    eg. download page for Security Update for Microsoft Windows XP (KB896358)

 

1 Why does my CHM Open Blank?
  The right hand pane of the help viewer shows the IE message "Item canceled" or "Page cannot be displayed".
  1. CHMs must now run from your local PC. See KB896054 for work-a-round.
  2. If you downloaded the CHM from a server do the following..
    KB902225 says right-click the file that you want to open, click Properties, and then click Unblock.
  3. Try emptying your Temporary Files Cache (Control Panel > Internet Options > General page > Delete Files...).

Note: Microsoft should display a clear message telling the confused user why content is not showing in the help file.
 

2 Content (Style Sheet / images) not rendered correctly in help viewer
  Try emptying your Temporary Files Cache (Control Panel > Internet Options > General page > Delete Files...). When the cache fills up IE cannot render its content correctly.

Note: Microsoft should fix this bug. Is IE7 ok?
 

3 Script Error when clicking Shortcut Link
  Shortcuts can be disabled on the local PC by setting the following policy. See KB810687, KB323180

Registry Key: HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System\
Key Name: HelpQualifiedRootDir (String Value) =

To enable shortcuts simply deleted the registry key name "HelpQualifiedRootDir". Even HelpQualifiedRootDir=<empty string> will enable the policy.  If the problem persists and the registry key name reappears then check with your network administrator as they are probably enforcing the policy.

Note: Microsoft should display a clear message "shortcuts disabled via policy. See your network administrator". Displaying an unrelated script error is clearly misleading and wastes everyone's time.
 

4 Corruption Help System - Help Wont Open
  Certain Help related DLLs can become unregistered. Usually due to a faulty installer or a 3rd party help authoring tool vendors trying to cut corners. Some vendors (usually Chinese based) actually install and register individual Microsoft help DLLs (they should use hhupd.exe and HtmlHelp.exe). These DLLs are often installed to the wrong location and eventually DLL mismatch problems occurs.

Download and run MJsDiags. This will check and repair DLL problems.
See http://helpware.net/downloads/#MJs

Note: Microsoft need better diagnostics to check that help DLLs are registered in correct locations with correct version stamps.
 

   

 

See also

Return to Home Page | Back To Top