Skip to main content
Participating Frequently
April 29, 2009
Question

Invalid HTML tag - Is this true? Child .chm files cannot have underscores in name?

  • April 29, 2009
  • 1 reply
  • 2617 views

I’ve been having the following problem:

file mk:@MSITStore:  … xxx.chm::/xxx.hhc contains an invalid HTML tag

In more detail what happens:

You click on the .chm file to open it and you get a dialog with an error message:

The file mk:@MSITStore:E:\p4_work\1663\isentris\isentris\end-user\trunk\src\Symyx_Isentris\!SSL!\Microsoft_HTML_Help\Symyx_Isentris.chm::/Symyx_Isentris.hhc contains an invalid HTML tag

There is an OK button and when you click that, then the .chm file opens just fine.

All child .chms open fine when I click on them.

This merged help project worked fine until I upgraded from RH X5 to RH7. I hadn’t changed anything. Then I started reading the forum (RoboHelp HTML Help).

What I’ve done so far:

·         Upgraded all help projects from RH X5 to HR7.

·         Regenerated all .chm files, added them again to parent help project’s TOC.  Child .chm files open fine.

·         Regenerated a new parent .chm.

So, I see that one of Colum's answers in another thread was to make sure that none of the child .chms had underscores in the title.

>>>>>>>>>> !!!!!!!!   you mean that RoboHelp now does not accept underscores in .chm titles? Please don’t let it be so.

Also, several people said that they solved the problem like this:

·         “You will get this message if your merged CHMs are not in a book in your merged TOC. Check that. “  You mean I have to associate a book icon with each child .chm in the parent’s TOC?

·         My guess is that the merged project should be placed inside a book in the main project's TOC. You'll just have to rearrange the subprojects TOCs so you don't have books inside books.

What does “in a book” mean? See my attached jpegs. The child project’s TOC is in book form  … within the child project. However, in the parent project’s TOC, the child projects are shown with that merged symbol … kinda looks like a very angular G. Should I create books that link to destinations? Is that what I should do in the parent project’s TOC? Somehow that doesn’t look like it’s going to work – I looked at both dialogs – link and no link – neither one looked like it would work.

Thanks so much for your help!!

This topic has been closed for replies.

1 reply

Inspiring
April 30, 2009

There are a couple of things to try:

1. Do your clients get the !SSL!\Microsoft_HTML_Help\ folder as shown in your image? Or do all the chm files end up in the one directory? If they will all be in one directory, then you need to get rid of the path definition in the TOC. If the child projects will be in different directories in the end product, then the path should reflect this. I suspect your chms should be something like:

Symyx client

Symyx for Excel

Scrivo

2. I'm not sure if the book issue is still a problem, but to test, in your TOC add a book above your merged help files, so it looks something like this:

    Help

        Symyx client

        Symyx for excel

        Scrivo

3. Your Scrivo hhc filename contains spaces. This might cause issues. If the project window is defined to point to a different hhc file, then maybe you can just delete that from the dialog box and save the "table of contents.hhc" file to the same name as your project (scrivo.hhc). I'm not sure about this - someone else will hopefully chip in with more information.

4. If none of those fix your issue, you could try recompiling all the children without underscores in the chm name. And if that doesn't work, renaming the project to remove the underscores in the hhc filenames (I think renaming the project does this, but I'm not 100% certain).

Hope this helps.

Amber

Participating Frequently
April 30, 2009

Hi, Amber.

Thanks for your help. There are some things you said that I need explained.

-- "Do your clients get the !SSL!\Microsoft_HTML_Help\ folder" Are you asking me if the child .chm files are in this folder? Yes.

-- The child .chms all end up in the same folder in the parent !SSL!\Microsoft_HTML_Help\ folder. In a merged help system, all the .chms (parent and children) need to be in that folder for it to build.

-- " ... you need to get rid of the path definition in the TOC." -- please explain this and give an example.

Let's start with these questions for now.

Thanks!

Hippopodius

Inspiring
May 1, 2009

When you have a directory path in the TOC, that means that the directory structure should match. So for example:

TOC (in parent.chm)

  !SSL!\Microsoft_HTML_Help\symyx_client.chm

  symyx_for_excel.chm

End folder structure: (+ for folder, - for file)

+ Help

   - parent.chm

   - symyx_for_excel.chm

     + !SSL!

        + Microsoft_HTML_Help

           - symyx_client.chm

Now if the symyx_client file shows up okay after the error message, possibly the parent chm file is smart enough to correct for the directory structure not being there, but a file with the correct name existing in the same directory as the parent.

We've always tried to ensure out merge references don't have a path - RH has the annoying habit of requiring the chm file to be copied into the root, but we just delete it after the first build, as it shouldn't need to be there for the actual compile process. In fact, we've had problems with the chm being physically built into our parent chm, drastically increasing the file size and resulting in duplicate and outdated topics in search. We leave the file there for the first build as sometimes the merge doesn't work first go without it; I think it has to do with how it gets added to the hhp file.

To test that our merge works, we just copy a couple of the files into the same folder  (e.g. c:\temp\test) to double-check. We need this process as our clients get different combinations of the total chm files built into our parent.

Something else I've just thought of is maybe there is something strange happening in the actual hhc file. Do you have any topics in that TOC with characters other than a-z, 0-9 and underscore in the filename (in the topic title should be okay, but maybe some particularly odd ones might cause an issue)?

Amber