Deploying Help Files to Windows Vista and Windows Server 2008
Provided by: Dan Haught, Executive Vice President
Many Windows applications have help files in *.HLP format that use the
Microsoft Windows Help engine. This engine has been around since Windows 3.1
and is supplanted by the newer help file formats such as .chm, .html and
.xml. It was only a matter of time before Microsoft deprecated the older
Windows Help engine, and Vista is the line in the sand.
Windows Vista and Windows Server 2008 do not ship with the Windows Help
engine, so any .HLP type help files do not work. This includes HLP files
shipped with Microsoft Access and Visual Basic programs.
For a short-term fix, users can download and install the WinHelp32
download. Check the chart below to find out which you need for your version
of Windows:
Windows Vista (32-Bit version) |
Windows6.0-KB917607-x86.msu (available
here)
|
Windows Vista (64-Bit version) |
Windows6.0-KB917607-x64.msu (available
here)
|
Windows Server 2008 (32-Bit version) |
Windows6.0-KB917607-x86.msu (available
here)
|
Windows Server 2008 (64-Bit version) |
Windows6.0-KB917607-x64.msu (available
here)
|
These downloads provide the WinHelp32 engine for existing help
applications.
As a longer term strategy, you should upgrade your help files to the
newer help formats. There are tools in Visual Studio.NET and from commercial
vendors that allow you to make this transition. In some cases, it's as
simple as recompiling your help file in the new format.
More information is available through the Microsoft Knowledgebase
article 917607:
The Windows Help (WinHlp32.exe) program is no longer included with
Windows operating systems starting with Windows Vista
HTML Help File Limitations
But watch out! Recent Windows security patches have limited the
functionality of these new help files on Windows Vista, XP, and 2003.
For instance, a CHM file cannot be opened directly over the Internet, and
you must download it locally before running it. For more details, see
Microsoft Knowledgebase article
902225 : You cannot open HTML Help files from Internet Explorer after
you install security update 896358 or Windows Server 2003 Service Pack 1.
A more serious limitation is that opening an HTML help file over the
network fails. This is a huge problem if your application resides on your
network and you expect users to share the help file located there.
Fortunately, you can adjust the users' registry setting to be less
restrictive and support network help files. There are several approaches to
this such as granting group rights or rights to individual directories. For
more details, see Microsoft Knowledgebase article
896358
: A vulnerability in HTML Help could allow remote code execution.
If you're confident your network help files are not a problem, the least
conservative approach is to allow the user to open any HTML help file by
adjusting these registry settings:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\HHRestrictions]
"MaxAllowedZone"=dword:00000001
"EnableFrameNavigationInSafeMode"=dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions]
"MaxAllowedZone"=dword:00000001
Alternatives also let you specify the safe directories.
Return to the tips page
|