-
1. Re: Child TOC pane blank in merged CHM set-up
Amebr Dec 16, 2009 3:12 PM (in response to RoboColum(n))We used to use this method, although from memory I thought we had to stop using it when X3 came out. But I might be mis-remembering as it was a long time ago.
I raised it with eHelp and the response I got was "yep, your workaround works". The workaround was compiling in HTML Help Workshop, which meant we couldn't use conditional tags, etc.
In the end we got our developers to re-do the way our help is called so that everything routs through the parent. This way the full toc always displays from the app, but individual help files have their own toc when opened manually.
We set up a redirect topic (redirect.1.xhtm) in the master project which just contains this script:
<script>window.location.replace(window.location.hash.substring(1));</script>
I'm pretty sure I got this off the forums somewhere, maybe it's on Peter Grainge's site? Except that I think I couldn't hide this topic from search using the recommended naming, so I ended up with that weird name. (I think redirect.xhtm was supposed to be hidden from search but wasn't for me?)
For each product is run the Map IDs reports, then run a special batch file one of our devs wrote which strips out everything except the file and map id, then adds additional information in. We end up with a file called something like MyProduct.ini (with corresponding help file MyProduct.chm). And the content for each ini file looks like:
10000=its:MyParent.chm::/redirect.1.xhtm#its:MyProduct.chm::/Function1\FirstTopic.htm
20000=its:MyParent.chm::/redirect.1.xhtm#its:MyProduct.chm::/Function2\SecondTopic.htm
I *think* the app calls the product ini file and is thus redirected through the master help file so that the full TOC displays
If you need I can probably get more details from the developers on what the app is doing and the name of the app that the batchfile uses.
Amber
-
2. Re: Child TOC pane blank in merged CHM set-up
RoboColum(n) Dec 17, 2009 3:21 AM (in response to Amebr)Hi Amber.
Thanks very much for the response. Unfortunately using conditional build tags is a must for us so we have to compile inside RH. We are very near code freeze so at this late stage do not wish to change anything drastically. The CHM is only being distributed as a backup in case any of our users don't have an internet connection.
For now I think we'll live with it annoying as it is . If you can find out about what your app is doing that would be useful to know and we'll see if we can change the app post release.
- Read the RoboColum(n) for a tips, tricks and musings on the Technical Communication Suite products.
- Follow the RoboColum(n) on Twitter
-
3. Re: Child TOC pane blank in merged CHM set-up
RoboColum(n) Jan 18, 2010 2:32 AM (in response to RoboColum(n))I meant to post a solution to this problem a few weeks ago but it got lost in the moment. Now that the dust has settled, let me do it.
We were caught by the known issue with the parent project's .HHP file. The [MERGE FILES] section had absolute paths to the child CHMs. This never used to happen but something seems to have broken this from RHX5 to RH8 so that when you compile the parent project, the relative paths are replaced by absolute paths of the reference to the CHMs when added to the TOC. The solution is to remember to edit the .HHP file (e.g. in Notepad) to remove the absolute path before you compile the parent project.
- Read the RoboColum(n) for a tips, tricks and musings on the Technical Communication Suite products.
- Follow the RoboColum(n) on Twitter
-
4. Re: Child TOC pane blank in merged CHM set-up
Amebr Jan 18, 2010 7:48 PM (in response to RoboColum(n))Well that's weird. Ours has the opposite problem in that the TOC appears fine with the merged child chms listed, but search and index only return results for the parent chm.
(Although, you say it's only problem when opening the child? If we open a child project, it doesn't know anything about the parent at all so we just get child TOC, index and search results. At the time we tried merging the parent into the child TOC, but got stuck in a nasty recursive loop in the TOC and had to remove it.)
I also realise I didn't get back to you with more details about our context calls. The developer was a bit cagey, but I gather this is the basic process:
On startup, the main app loads any ini files it finds (they contain information as listed in my earlier post). Any screens in the main app just use the regular HTMLHelp() call - if the ID isn't found in the main help, then the app checks through the ini files for the ID and calls the corresponding path.
I have some code I can post, although it sounds like you've solved your problem anyway and I'm not sure the snippet will be any use - I can't tell if it's different code to a normal call or if it contains all the info needed.
Amebr
-
5. Re: Child TOC pane blank in merged CHM set-up
Peter Grainge Jan 19, 2010 1:08 AM (in response to Amebr)There is some information about merging CHMs at the end of my article on merging help with RH8. The information would apply to other versions. Maybe something there will help?
See www.grainge.org for RoboHelp and Authoring tips
Follow me @petergrainge



