12 Replies Latest reply on Oct 1, 2010 8:06 AM by DavidHutchinson

    Search results showing results from topics not in child chm files

    DavidHutchinson

      Hi,

       

      I have a problem with the way Robohelp 8 does its searching across 'child' Help files that are linked to a main 'parent' help file via the TOC. I have a Help system with a number of Help files that are linked to each other in this way. When I search for a word or phrase using the Search tab, the search results 'find' a topic in more than one of the Help files, even though it exists in only one of the Help files. As an example, I have -

       

      System.chm

      Costing.chm

      CustomerRelationshipManagement.chm

      InvoicingSOP.chm

      NominalLedger.chm

      PurchaseLedger.chm

      PurchaseOrderProcessing.chm

      SalesLedger.chm

       

      One of the topics in Main.chm is 'Company Profiles'. If the search finds what I am looking for in 'Company Profiles' (in Main.chm), the results suggest the topic also exists in all the other Help files (it doesn't!). Also, each topic is displayed twice too!

       

      One of the reasons for creating multiple chms was so that the search gave the user more information about where it had found what they searched for - the filename is displayed under 'Location'. However, at the moment, the search is next to no use because most of the time the topic will not be displayed - instead it displays 'This program cannot display the webpage'.

       

      This is displayed when I click on an invalid search result - (the topic does not exist in the 'Sales Ledger. chm' file). Notice that the results displays the topics twice  -

      Annotation.jpg

      This is displayed when I click on an valid search result (the topic does exist in the 'System.chm' file) -

      Annotation2.jpg

      I am stumped! Any help you can offer me is much appreciated.

      Thanks and regards,
      David.
        • 1. Re: Search results showing results from topics not in child chm files
          Captiv8r Adobe Community Professional & MVP

          Hi David

           

          Personally I'd be more than a bit surprised to discover that the issue is related to RoboHelp. But that doesn't help you solve the issue, does it?

           

          Basically RoboHelp kicks off the Microsoft HTML Help Compiler to create the CHM file(s).

           

          Here is the approach I might take in trying to ascertain what is happening.

           

          Open one of the child CHM files and perform a search for the term. This would be my first "sanity check". I say that because when things aren't going as expected, your mind plays tricks on you. At least mine does. So my first step would be to assure myself that the term actually isn't found when searching the individual files.

           

          Once I did that, I would probably try removing RoboHelp from the picture. You do have Microsoft HTML Help Workshop (HHW) installed, no? If you don't, you really should have it. Anyone developing CHM files should have HHW installed. Just for cases such as this.

           

          Click here to visit the Microsoft site where you may download HHW

           

          If you had to download and install HHW, don't sweat the fact that it reports back that a newer version is already installed or whatever. I think that's the message you see.

           

          Use HHW to open your project and compile your project(s). Particularly the master.

           

          By compiling using HHW, you are removing RoboHelp from the mix entirely. See if the problem persists. (My guess is that the problem will still be present.) But this step will either confirm or deny that RoboHelp has anything to do with what is happening.

           

          Give those things a go and report back what you find.

           

          Cheers... Rick

           

          Helpful and Handy Links

          RoboHelp Wish Form/Bug Reporting Form

          Begin learning RoboHelp HTML 7 or 8 moments from now - $24.95!

          Adobe Certified RoboHelp HTML Training

          SorcererStone Blog

          RoboHelp eBooks

          1 person found this helpful
          • 2. Re: Search results showing results from topics not in child chm files
            DavidHutchinson Level 1

            Thanks Rick, that was a very useful pointer. I've tried what you suggested.

             

            I installed HTML Help and have compiled two of my projects in it. The problem does not occur using these two projects so I guess that proves something. HTML Help uses the .HHP file rather than the RH .XPJ file and does not read the .HHC TOC file or the index file (both XML files as you know). Also snippets and variables are ignored during the compilation. It looks like there is a serious bug in RH8 that needs to be sorted out. If it isn't, I won't be able to compile my projects in it.! I think the problem relates in some way to the TOC and/or the index which in RH8.

             

            I dont know. I have proven that when the projects are compiled in HTML Help, the problem I originally described is fixed. However, I can't use HTML Help to compile my projects as it's too old.

             

            David.

            • 3. Re: Search results showing results from topics not in child chm files
              Amebr Level 4

              Perhaps see if anything in this thread helps.

              Why does RoboHelp display duplicate topics (incl. one "not found") in Search Results?

               

              In particular, incorrect entries appearing in the [MERGE FILES] section of the hhp. If this is the case and you find these entries continue being put into your hhp file, then they are probably also occurring in your xpj file. Theoretically the list here is controlled by your TOC, but I've found it a bit flaky. (Although it is useful for a sub-child merge hack I use. ) Manually removing any incorrect entries should solve this issue.

               

              The other thing I've noticed is if you have the chm files in the project root directory (as RH automatically does when you do the merge links in the TOC) sometimes these get built into the parent, resulting in duplicate entries and out of date content. I delete the files from this location, and just live the with broken baggage files that RH shows. They are not necessary when compiling from HHW, and shouldn't be forced into the parent project by RH.

               

              Amebr

              1 person found this helpful
              • 4. Re: Search results showing results from topics not in child chm files
                DavidHutchinson Level 1

                Thanks Amebr for your reply ...

                 

                I have checked the MERGE section of the HHP file and it is OK. I still get multiple results in the search though. I have had problems with the MERGE section in the past though. I have also removed all the chm files in my working folder and recompiled both the master and the child projects. No joy with that either.

                 

                A couple of questions ....

                 

                I have noticed on one of Rick's threads that hyperlinks to topics outside the project could be a problem. My help files all have hyperlinks that point to target topics in one or more of the other chm files. Is that a problem?

                • 5. Re: Search results showing results from topics not in child chm files
                  DavidHutchinson Level 1

                  And the other question

                   

                  Another suggestion was to delete the CPD file. What effect would that have? I assume I would lose something and would have work to do ....

                  • 6. Re: Search results showing results from topics not in child chm files
                    RoboColum(n) Level 5

                    Hi David.

                     

                    The project's CPD file is rebuilt when you open a project if it isn't present so there is no problem with deleting it. It is a configuration file that is in effect an Access database and can sometimes be the cause of some issues. There is even in option in RH8 to rebuld it each time you open your project.

                     

                    If that doesn't work, I wonder whether we should be taking another look at the [MERGED FILES] section of your .HHP file. Is there a path to the CHMs there? I ask because I find that when I add an external link to a topic in another CHM that the path to it is added (e.g. C:\Source\ProjectA\projecta.chm). Before compiling each project, open the HHP file and remove the path. This is because your CHMs will have to be installed in the same location and therefore the path is unnecessary.

                     


                      The RoboColum(n)   @robocolumn   Colum McAndrew
                    • 7. Re: Search results showing results from topics not in child chm files
                      Peter Grainge Adobe Community Professional (Moderator)

                      If you are using RoboHelp 7 or 8, you can delete the CPD without losing anything. See Opening Projects on my site for more information.

                       


                      See www.grainge.org for RoboHelp and Authoring tips

                       

                      @petergrainge

                      • 8. Re: Search results showing results from topics not in child chm files
                        Amebr Level 4

                        I delete my CPD on a regular basis (RH6) as this prevents a number of problems when multiple authors have worked on the same project. It can also highlight some inconsistencies that crop up. For example, the other day, one colleague was working happily on a project, but I had to make some changes when he was away. When I opened the project (without a cpd), several files showed up that he couldn't see, but which were being compiled into the output incorrectly. So even when no-one else has worked on my project, I sometimes delete the cpd just to check if I have broken links/extra files I didn't know I had.

                        • 9. Re: Search results showing results from topics not in child chm files
                          Amebr Level 4

                          Oh, Colum, a reason for the hard-coded path! I'll have to check that out. (While we have the workaround, the reason for it has always bugged me. )

                          • 10. Re: Search results showing results from topics not in child chm files
                            DavidHutchinson Level 1

                            The more I look at this, the more confused I get !

                             

                            The merge section in the HHP file does indeed have a fully qualified path before the child chm file. As an example, the file Cashbook.chm looks like -

                             

                            c:\writing\opera III\Help\Main\Cashbook.chm

                             

                            There are 14 of these entries, each pointing to another help file, each with the full path.

                             

                            Even if I remove the CPD file and remove the paths from the HHP file, the paths 'return' when the master chm file is compiled. I think there may be something in this being the problem but they keep coming back after I remove them!

                             

                            Another thing - if I copy the master chm file to a new folder (nothing else in it) and I search for a phrase, it 'finds' the phrase in chm files that are not in the folder (say cashbook.chm). These chm files are in the c:\writing\opera III\Help\Main folder (where I build all the child chms and where the master chm is built from). Why does it look in these chm files when they arent in the folder I am working in?. They must be IN the master chm file (they are mentioned as baggage files in the master chm file).

                             

                             

                             

                            • 11. Re: Search results showing results from topics not in child chm files
                              RoboColum(n) Level 5

                              Hi David.

                               

                              The reappearing path is a known issue with (I believe) the MS HTML Help compiler. It means you have to amend the HHP file each time you want to compile. What I do is have a Notepad file on my desktop with the appropriate [MERGED FILES] section as it should me. That way I can copy / paste which is much quicker.

                               

                              As for the search, I think this is because the merge merges the keywords into the master project's database. I'd expect you to be unable to access the CHM if you click on a topic in the search results if the CHM is not present. I'm not sure about this though.

                               


                                The RoboColum(n)   @robocolumn   Colum McAndrew
                              • 12. Re: Search results showing results from topics not in child chm files
                                DavidHutchinson Level 1

                                Hi Colum,

                                 

                                I also have a Notepad file on my desktop with the appropriate [MERGED FILES] section as it should be, which I use when I build the project. I wonder though, as the list is changed to include the path every time the project is built, whether it does this BEFORE the compilation (so it will affect the chm file) and AFTER the compilation (so presumably it will have no effect).

                                 

                                Do you have a view on whether hyperlinks to topics in other chm files could be causing the searching problem?