This content has been marked as final. Show 13 replies
Did you ever figure anything out on this - I am having the exact same problem. Most likely a corrupted file but how fdo we fix it without losing the index?
I have to ask whether your project is stored on a network drive? If so, that is likely to be the cause of any corruption. Take a look at one of Rick Stone more recent scrys for advice on where to store your RH project files. Click on this link.
To recover from the problem, click on this link to see help on recovering the corrupt projects.
Janet and Thomas,
If you're still having trouble after trying the workaround, and are not working on the RH project across a network, open the HHK file with a text editor and scan its contents. It should look something like the example below.
The first chunk identifies the file as contents for the index.
Each < li > chunk represents a keyword and the topic(s) it points to. The first "NAME" is the keyword. The next "NAME" and "Local" lines show the topic title and file name. For more than one linked topic, each has a "Name" - "Local" set before the < /object > close tag.
Note that there is no < /li > tag before < / object >. Also, the file isn't in alphabetical order; it gets sorted on the fly.
Do you have any unusual file names? For example, containing a symbol other than an underscore? A file name like bake.doughnuts.htm can give RH a hiccup, while bake_doughnuts.htm is OK.
Please post back, thanks.
Thanks everyone for your replys.
Colum - my project is on a local hard drive not on a network.
Brian - I tried your workaround and the Index tab does in fact open now without crashing. thanks
HKabaker - now it gets interesting. My HHK file is empty - here is the actual contents:
<!-- Sitemap 1.0 -->
<object type="text/site properties">
<param name="SiteType" value="index">
Despite that, when I generate Flash output, the original Index I created with about 400 entries comes up in the Flash Help and works properly. However my Index panel in RoboHelp is empty. Now if I add index entries to the Index, they show up in the panel and when I generate Flash output, they are merged into the index with the other 400 entries that were there befroe the problem occurred. But only the newly added entries show up in the Index Panel.
Regarding file names: I did find a few file names which were automaitcally generated during an import that have "-" (dashes) in them.
I appreciate everyone's attention to this.
Which application are you using to view the HHK file? What you're showing looks like a brand new, empty HHK file. Are you using RH X5.0.2? Windows 2000 or XP?
I don't know where Flash Help gets data for the index, so if the HHK file is empty, I'm stumped about that.
Do you have any earlier versions of the HHK file for this project, perhaps in backup copies? You might be able to see where the data went missing.
The next thing I'd do is to root around in (a backup copy of) the CPD file via Microsoft Access and compare it with a CPD file from another project. that has a known good index . But since I don't know a lot about the CPD database structure, I'd be fishing.
I hope someone else has more insight on this.
I think a hyphen is OK for a file name.
I am running RH 5.02 on XP. Just for good measure I went and changed all the file names with "-" in them and along the way I found a few file names with parenthesis in them "()". So that might why my files were corrupted. I imported about 400 pages of Word documents and let RH name the files and didn't notice the () until now. I backed up before building the index and then backed up again after but unfortunately the second backup has only what I showed you in the previous posting.
As per your suggestion I opened the CPD file in Access. Here are some files of interest within the CPD database:
KKeywordList: contains all the Index keywords I had previoulsy set up with a numeric Keyword ID for each keyword.
Topic List: Contains topic title, topic filename, and a numeric Topic ID for each topic.
KKeywordSources: a cross reference list relating Keyword IDs to Topic IDs.
It may be possible to rebuild my corrupted HHK file using Access to generate a report and output it as a text file.
At least I know now why the Index is generating in my output when the HHK file is empty.
Thanks Harvey - you've been a big help.
If you go into the !SSL! folder to the folder for whatever output you are generating (in my case Flash) there is an HHK file. That contains the Index entries that are showing up in my Flash output and is apparently generated from the CPD file. I just copied the HHK from the !SSL! folder, into my main project folder - overwriting the existing HHK and now all the entries show up when I use the Index tab.
(For anyone who hasn't read all the previous postings: Remember - I previously deleted the XPJ and CPD file and then right clicked on the HHP file and selected edit to have those files rebuilt as per the link Brian pointed me toward in his posting.)
The question remains - if I deleted my CPD file and my HHK file was corrupted , how did RH rebuild the Index into the newly generated CPD file? Does it go to the !SSL! folder to find it in output or are there some hidden files somewhere? Either way I am a happy camper.
Very interesting. But I don't think RH "found" the index outside the project folder.
I think your project HHK file was corrupted in a way that RH couldn't display the older data in the project index frame, but showed you any new index entries, and could use all the data when building output.
The HHP file is like an index of your project folder, and some housekeeping instructions. It includes
When RH rebuilds the CPD and XPJ files from the HHP file, it looks for the index source file in the project directory. If there is none, it creates a new, empty one.
As luck would have it, Flash Help generates an HHK file file for the output folder, which is identical to the source HHK file, except the output file is in alphabetical order by keyword. (I never knew this before today.) As you said, you copied the index file into your project folder, and that's how your index was restored.
WebHelp output doesn't include the HHK file. If you found one there, it must have been virgin birth. I have a working directory with more than 100 RH projects from the past few years. All HHK files were in the project folders, none in any SSL directory.
I tested a couple of scenarios.
When the HHK file was missing from the source directory, and I trashed the CPD and XPJ files, and opened the HHP file, RH did not find the HHK in the Flash Help output folder. The index was empty. On outputting Flash Help to a new output folder, the index was empty. Same for WebHelp. When outputting to the old FlashHelp folder, RH did not preserve the previous output HHK.
I guess the lesson here is that -- aside from any backup routines we may follow or forget -- we should generate Flash Help output for a project that has a substantial index, to back up the HHK file.
I was very happy to see this post since I had the exact same problem today. Does anyone know what caused it? It seems like my problem was the same as Thomas'. The main difference is that my primary layout is HTMLHelp rather than FlashHelp.
First off, I was able to get my index back after deleting the .CPD file and then opening the .XPJ file. But the next time I would open the project, the Index tab would crash the program once again.
In order to fix the problem and get my index back, I tried creating a numer of layouts after opening the .XPJ file including HTMLHelp, WebHelp, and FlashHelp. The index didn't work in the compiled HTMLHelp; there simply was no Index tab. The index was complete in both the WebHelp and FlashHelp versions. I tried to recreate my project by opening the .HHP file. But since there was no index in the compiled HTMLHelp, it did not retrieve my index.
Next, I went into the SSL folder to locate a .HHK file. The HTMLHelp folder only has a single .CHM file. The WebHelp folder contained many files, but nothing resembling a .HHK file. The FlashHelp folder, however, did contain a .HHK file.
Next, I copied the .HHK file from the FlashHelp folder to the root folder. I expected this to work, but when I opened up the .HHK file in a text editor, it was empty. It didn't replace the existing file. (I guess I should have deleted the original, but I didn't seem to think of that.)
Finally, I just selected the contents of the .HHK file in the FlashHelp folder and pasted them into the contents of the .HHK file in the root folder. This worked, and my index is back.
So my solution worked simillarly to Thomas' solution, except that I needed to generate other layouts than my primary layout in order to recover the index.
I hope this is useful to other HTMLHelp authors.
Is an Adobe analyst or developer working on this problem?
As a reminder, you should review all .htm file names to be sure they don't contain spaces (underscore_is_needed), odd symbols or two dots, such as class.schedule.htm Do this first.
We should be able to solve this if a corrupted project file is at fault. When someone who reads this forum has this problem, where RH crashes upon opening the index tab, please take these steps:
1. Do nothing more in RoboHelp. If it's not frozen, don't close or save the project. If RH is frozen, try to get to the Windows desktop.
2. Did you have to reboot the PC? If so, don't start RH yet.
3. Open the HHP file from a text editor. (If you double click or edit the HHP file, RH will try to use it to rebuild the project. We don't want this.)
The HHP file should identify the index resource:
If that's OK, close the HHP file and continue with the next step. If not, skip to the last step below.
3. Make copies of these files from the project directory:
4. if you have Flash Help output, copy these two files:
projectname_hha.hhk (I haven't completely figured this one out. Anyone else?)
5. Compare the .HHK file with its counterpart in another project that has an index. See anything different in the file structure or tags?
6. Restart RH and open a different project with an index previously known to be good. Click the index tab. Does RH crash?
If it does, I would guess the problem is not in the files, dear Brutus, but in core RH and/or the Windows OS . Or a memory failure. Reboot and restart RH to see if it crashes again when you open a different project with an unmolested index.
7. If the HHK file from Step 3 seems to be OK, compare the XPJ and CPD files with their counterparts in another project with an index.
Final step when the HHP index ID is bad:
Close the HHP file and make sure the project is not open in RH. Open the HHP file in a text editor. Correct the index ID line and save the file. Launch RH and open the project.
It RH crashes again, go to the workaround where you remove the CPD and XPJ files and open the HHP (double click or File / Edit).
Please report back with results.
Disclaimer: As always, backup, backup, backup. This may not apply in your situation. I can't guarantee, etc. Don't blame me, etc.
Thanks Harvey for the Correction. The first line of my previous posting should have read:
If you go into the !SSL! folder to the folder for Flash output there is an HHK file.
I will include here concise instructions for a solution that worked for myself and Maura in case someone doesn't want to read through all the previous postings:
1. Back up your main project folder and all its contents.
2. Generate FlashHelp output. (Even if you primary layout is WebHelp or HTML Help)
3. Go to your main project folder and DELETE the .XPJ and .CPD files.
4. Go to the !SSL! folder inside the main project folder. Find the FlashHelp folder. Copy the .HHK file from the FlashHelp folder into your main project folder overwriting the existing .HHK file. (Alternately you can open both files in NotePad and copy the entire contents of the .HHK file in the FlashHelp folder and paste it into the .HHK file from the main project folder overwriting any existing data, then save the file.
5. Find the .HHP in the main project folder, right click on it and choose EDIT. The .XPJ and .CPD you deleted in step 3 will be regenerated and your project will open and should function properly.
Remember as Harvey suggested above to make sure you don't have any unusual characters in your file names as this can cause corrupted files in RH and the problem might reoccur.
Please see the following TechNote for more information: http://www.adobe.com/cfusion/knowledgebase/index.cfm?id=rb_34906
Thanks to Harvey, Brian and Maura for their valuable input into this solution.