Previous Topic  Next Topic 

This is a screen shot of the "Merging" tab in "HtmlHelp Compiler Options". Each section is described in detail below:-

The Merging feature in HtmlHelp, allows more than one CHM file to be merged together. The CHM files still remain separate, but internally one of the CHM files, (the Master), will be capable of referencing the topics of the other CHM files (slaves), as if it is one merged project. A full tutorial on merging is available by clicking here. The individual fields of this screen are detailed below:

If you are merging this project then check the "This project is part of a merged Project" option.

This is the Master Project: If this option is checked, then this Project will be the one to control any other merged CHM files.

Add Support for accessing Slave Topics programmatically: Normally, your application might reference a topic in your CHM file using the HelpID of that page or the page name. However, Microsoft does not provide the same mechanism for accessing pages in the Slave CHM files. Although we could not add a mechanism to access the HelpIDs in the slave topics, we have provided a solution so that you can access the page names.

When you check this option, the next time you compile, Fast-Help will create a xhtm file, using the file name specified in the "Internal File Name:" field. By default this is DisplaySlaveTopic.xhtm. Fast-Help writes the necessary code with this file and adds it to the CHM file. Once compiled, you can now access a slave topic using the following syntax:

  hh.exe "C:\..full path\Master.chm::/DisplaySlaveTopic.chtm#its:Slave.chm::/SlaveTopic.html"

I know that may seem a daunting syntax initially, but when you replace your master and slave CHM file names and start using your own page names, you will find it a lot easier. This is a workaround to the problem of not being able to access slave CHM files programmatically.