Make sure you have the same Window name defined in all projects. You'll have to compile them to check if this works (at least the master and one child.)
Check the Single Source Layouts. Ours has the Default Window set to <Default> but if you find this doesn't work once you've ensured all your projects have the same window name, then select the window you want to use. Recompile to check if it's working.
This site recommends prefixing the window names with "$global_". I've never found this to be a problem, but if the above don't work then it wouldn't hurt to try.
The window name wasn't set on default in the parent, so I changed it to default, although it shouldn't have mattered since it only has one window. That didn't fix it. As far as checking or changing the children window names, there are 60 of them so I'm reluctant to do that. I really believe this has something to do with the parent project. Especially since we have a parent that works correctly and it uses many of the same CHMs as the parent project that doesn't work (it was created with RH 5 or 7). The parent that works correctly, also has a different window name than all it's merged children. We now have a temporary solution that may fix it. I made a copy of the parent project that is working correctly and made a separate TOC. I then merged in a couple of .chms and generated the new layout and it works perfectly. I still need to remove all the original matter from the first TOC, but I think this is going to work.
I think somehow the last time I had this problem I stumbled on a solution and wasn't sure what fixed it, but the problem reared its head again, and it was back to the drawing board. Now I think we have a solution, but we don't know for sure what created the problem. Although we're pretty sure the problem has something to do with creating a new window when there is already and existing window.
What we found. This problem couldn't be fixed in the SSLayout. We found that the Properties | Advanced | Window setting for individual topics in the TOC had been erased. This Window drop-down selection lets you choose a window other than <Default> if more than one window exists. If not changed by the user, it should stay at <Default>, but somehow the setting was blank on several topics, probably due to the creation of a new window, and maybe some other values being changed. This is probably a bug in RH8, but I don't know about other versions.
How to fix it.
- First you have to isolate which merged .chm file (child) has the problem, I believe I did this by removing one child .chm at a time from the Parent project and then seeing if the parent .chm worked correctly after generation.
- Once you've found the offending .chm (there may be more than one), open the project and the TOC for the .chm that is a problem.
- Go to the TOC pod > Topic Page Properties (right-click on a Topic in the TOC and select Properties) > Advanced > Options panel and ensure that a value exists in the Window: field. If the field is empty, you have a problem. Click the drop-down and select <Default>, even if your .chm window displays in drop-down.
- I don't believe there's an option to set a window as the default when you create it, so if there's more than one window, who knows what the <Default> option is drawing from, unless <Default> points to the window you have selected in the SSLayout, which I think is the case.
- Find all Topics that have this problem and fix them. Note: you cannot fix this by going to topic Properties in the Topic List (or from r-click Properties in a topic), you have to do it in the TOC.
- Save all changes, generate the child .chm, and then replace the old child .chm with the new one.
- Open the parent .chm and check to see if all topics open in the parent window. Your Done