In my application, I am trying to form URLs to automatically pull up context sensitive help based upon Robohelp Topic Ids. I have read about how it should work using this reference: https://www.wvanweelden.eu/articles/part/csh-start-file but for some reason it is not working at all. Let me describe the issue in more detail. I have a Robohelp project wit many topic ids. I generate webhelp for the project and publish it. I then create a url that I want to display the web page corresponding to the Robohelp topic ID. For example: "http://MyWebSite/Documentation/DEVELOPMENT/WebHelp/index_csh.htm#TopicID=Batch_Folder,withnavpane=tr...". According to the documentation I have read, this should work but no matter what topic id I use, the Help Start page is always displayed. I am at a loss to explain why this is failing when I appear to have followed all the proper steps to make it function properly. Can someone in this community please help me?
Calling help using URLs and Topic IDs are different methods. Topic IDs are contained in a file you hand to developers and they do whatever is needed according to what tool they use for development.
Take a look at my site where there is another topic about using URLs. Maybe that will help.
See www.grainge.org for RoboHelp and Authoring information
I am a developer who is using Robohelp to create context sensitive links in an application. A user clicks on a link which points to a Url that opens a page associated with that specific Robohelp Topic Id. I don't understand you saying calling help using URLs and Topic IDs are different methods. The Topic Id is included in the Url for the context-sensitive link. The Topic Id I am calling exists in the BSSCDefault.h file and is valid. I had already seen the page you linked in your response. In fact, on the page Using Topic IDs it describes the very same procedure I am trying to use but that is not working for me.
As you will have seen, that page was not written by me as it crosses the line between authoring and developing. I will ping someone who might be able to help.
See www.grainge.org for RoboHelp and Authoring information
I certainly appreciate any assistance you can help provide. We really need to get this working for us.
Make sure the map files are being included in the output. This has caught me out on a number of occasions.
Open the Webhelp Single Source Layout in Robohelp and check that the relevant map files are ticked.
How are the map files created? Are you generating the .h files outside of RoboHelp? In that case, you'll need to assign the id's to topics. Otherwise you'll just have a lot of id's but they're unmapped.
If you're a developer, you can generate the .ALI file to map automatically. (Don't forget to delete the CPD before opening the project and generating the output.)
Willam, we programmatically create both the BSSCDefault.h mapping file and the .ali alias file outside of Robohelp. I discussed this with another developer and was told that at one time this used to work for us, but it is currently not working and I am trying to discover why that is.
We have not being doing anything with the .CPD file. What is the significance of this file and when/how does it get generated? Would it be appropriate to programmatically delete the .CPD file at the same time the mapping and alias file get created?
Did you update your RoboHelp version? The .ALI file changed structure at some point.
the CPD is a temporary database. You can delete it without issue. And doing it automatically when you generate the other files is a good time.
Willam, We are still using Robohelp 11. The version has not changed. I will modify our code to delete the .cpd file automatically. Could the .cpd file not being deleted cause the issue I am seeing with the context sensitive links not working?
Here I am three months later without a resolution to this issue. I had a space in one of my folder names that I thought might have been causing the problem but after removing it, the issue remains. Can anyone help me resolve this??
What if you try changing TopicID to lowercase?
Edit: oh, and there's a CSH tester in Robohelp you could try. View > Pods > Toolbox > CSH Test.
Select Offline and browse to the local output folder (where RH generates the webhelp).
In Map Number, click the icon and browser to the source folder and select the applicable .h file.
Then select a map number/id and click Show Help.
If the correct topic shows up, then the mapping is correct in RH and the output, so the problem is in the application call. If the correct topic doesn't show then it I'd say the mappings aren't applied in RH correctly.
Here is some more info about this issue: We have debug and release versions of our context sensitive help system. The debug version links to the index_csh.htm file in the !SSL! WebHelp folder and the release version links to the online html help after it has been published. Context help links to the Html version after publishing works. Context help links to the index_csh.htm file do not work, although they did in the past. We believe some change to internet explorer is causing this to work differently than it has in the past. In any case, we have decided just to use the online help for everything to get around the issue. Since I believe the issue is outside the scope of Robohelp, I am closing the issue. I appreciate the assistance everyone tried to provide.
If you're trying to examine html files on a local drive or LAN drive, IE will probably have an issue - I've found that adding the locations as "Trusted Locations" works to avoid the issues with IE. That was the intention of that old "Mark of the Web" flag in the output SSL options.
Jeff, I appreciate that feedback and we will check into that.
I checked that and BSSCDefault.h is marked as the project mapping file.