Home WinHelp HTML Help MS Help 2.0 LongHorn Help Store Links Betas Projects  
 

HTML Help System Requirements
Last updated February 26, 2003

One of the most common questions in the area of HTML Help is "What needs to be installed on a computer so HTML Help files can be viewed?" If you look in the Official Microsoft HTML Help Authoring Kit, you'll find some information that can be quite confusing as you get deeper into it.

  • HTML Help Viewer System Requirements
  • Internet Explorer 3.0
  • HTML Help Viewer Components - Installed using the free run time installer hhupd.exe

Ok, let's walk through this step-by-step.

The HTML Help viewer is a 32-bit application. What this means is that it requires at least Windows 95 in the Win9x line-up, or a minimum of Windows NT4 if you want to go that route. If you have a baseline Windows 95 system, it's also going to require the installation of DCOM95. Also, installing on an NT/2000 system will require administrative priveledges on the system.

HTML Help is a technology that requires internet browser components in order to work. Microsoft Internet Explorer is the only browser that will work with the HTML Help viewer components. The absolute minimum requirement is Internet Explorer 3. However, some testing has shown that there are still some things missing in Internet Explorer 3, causing some problems with the HTML Help viewer. Because of this, using at least Internet Explorer 4 is highly recommended. You can select any version of Internet Explorer you'd like at the Evolt Browser Archive.

So, what do do get with using one version of Internet Explorer over another? As mentioned in the previous paragraph, IE3 may be required but IE4 is highly recommended. What's the difference here? The main one generally mentioned is that with IE4 you get DHTML, but there's actually more to it than that. We recently ran some tests on a baseline Win95 PC with IE3.02 and HTML Help update 1.22 installed. What you're going to miss with IE3 is:

  • JavaScript Support - Running Blue-Sky's Africa.chm file, which uses JavaScript to implement COM, gives an error of "Microsoft JScript runtime error: [Line 16] 'BSSCOnLoad' is undefined".
  • CSS Support - Running windows.chm from Windows 98 demonstrates that the CSS within the CHM is ignored.
  • Search Highlight - This HTML Help viewer Options button menu item does not exist on the IE3 machine. If the MSDN menu is implemented on a CHM, this menu item does exist on the View menu and appears to work when in fact it won't.
  • Incomplete FTS - Running the same search on the same CHM on an IE4/5 machine and an IE3 machine will give less results on the IE3 machine.
  • Microsoft Agent Inop - The characters are static and will not function.
  • Incomplete System Menu - The Version menu item on the system menu is missing.

One thing you could do is update the scripting engine, but that's not going to solve all the problems you'll see.

In order to present complete help systems to your users via HTML Help, be certain to ensure at least IE4 is installed on the target system.

Moving to IE5 also gives you XML capability. However, you should be aware that you'll get a whole bunch of errors if you compile XML with the current 1.x compiler. These can occasionally be ignored, but you have to be careful.

Two questions normally come up at this point. The most common is "What happened to hhrun.exe?" This is mentioned in the Official Microsoft HTML Help Authoring Kit by Steve Wexler (Microsoft Press, ISBN 1-57231-603-9):

Internet Explorer Runtime Setup
At the time of this writing, a freely-distributable setup program that installs the Internet Explorer runtime engine was in development and should be available by the time you are reading this.

You will only need to distribute this setup program if you are not sure if your users will have Internet Explorer installed.

Hhrun.exe never happened and isn't going to, as it is not possible to distribute just the Internet Explorer files necessary to display HTML Help. This brings up the other question which is normally asked here, which is "What are the key files that are needed to view an HTML Help file?" Unfortunately, there's no list of files that will actually work. You have to install Internet Explorer on the target machine.

The only possibility there is to get HTML Help functionality on a given machine in a silent manner as was suggested when the idea of hhrun.exe was being bandied about is to use the silent install technique for Internet Explorer 5. This is outlined in fellow HTML Help MVP Paul O'Rear's paper How to Create a Silent, Minimal Install of Microsoft IE5 for Products using Microsoft HTML Help. Paul had access to the Internet Explorer development team during the writing of this paper, and the technique works well. The technique outlined in Paul's paper carries out a minimum install, and uses a few special techniques to make the install silent. Implementation is best provided by creating a small standalone EXE with VC++ or Delphi to carry out the necessary functions. Note that this installs IE5 on the end user's machine without making it the default browser and without implementing the desktop functionality of IE5.

As for the practicality of implementing the procedures in Paul's papers, we've posted some info and tools on the specifics of getting it to work here.

So, what about hhupd.exe? This is the executable which will install a given version set of HTML Help viewer components to work with an installed version of Internet Explorer. Installing Internet Explorer 4 also installs the HTML Help viewer components from hhupd.exe version 1.0. Installing Internet Explorer 5 also installs the HTML Help viewer components from hhupd.exe version 1.21. Installing the Internet Explorer 5.5 Platform Preview also installs the HTML Help viewer components from hhupd.exe version 1.3, but only if hhctrl.ocx is earlier than the version that shipped with IE 5.00 (4.73.8412). Otherwise, the update won't occur at all from the Internet Explorer 5.5 Platform Preview install.

You need to ensure you install at least the hhupd.exe version that matches the version of HTML Help Workshop on the development machine. Running the version of hhupd.exe that ships with whatever version of the Workshop you have is the easiest way to do this. If the components on the target machine are already later versions, no harm will be done, as they won't be "downgraded".

Since Windows 98 also installs IE5, HTML Help 1.21 is included. Windows 2000 installs the components for the multi-lingual HTML Help 1.3.

Yes, there are ways to create web interfaces for HTML Help development files, such as the TOC (*.hhc) and Index (*.hhk), along with the raw HTML files and make it look like the HTML Help viewer. But standard HTML Help files have to have Internet Explorer on the target machine, not Netscape or any other browser. 

And no, HTML Help files cannot be viewed on a Macintosh ...