Page 1 of 1

CHM and "Help Context ID" in Microsfoft Access Form

Posted: Thu Nov 15, 2012 7:34 am
by stevecam
Hi,
I'm just getting started with DITA in Oxygen.

I want to generate a CHM Help file and link DITA tasks and topics to forms and controls in MS Access. To do this I need to add numeric "Help Context ID" values to the CHM file, which are then added as properties of the form controls.

Can anyone help with a way to achieve this via Oxygen and DITA.

Re: CHM and "Help Context ID" in Microsfoft Access Form

Posted: Thu Nov 15, 2012 1:04 pm
by stevecam
Reading the MS HTML Help Workbench app. documentation, I think I have to create extra files to those generated by Oxygen, and then compile the CHM again. I will update once I have it working.

Re: CHM and "Help Context ID" in Microsfoft Access Form

Posted: Mon Nov 19, 2012 1:38 pm
by sorin_ristache
Hello,

You could try to generate a properties file, that is a text file with a list of pairs key=value, where each key is a HelpContextID and the value is the path of the topic HTML file that corresponds to that context ID. The properties file is loaded at runtime (for example from the same directory as the CHM file) and is used to determine the name of the HTML topic file which the CHM file must be opened directly to. The name would depend on the id attribute value of the XML DITA topic, for example if the XML topic file is called on disk topics\intro.dita and starts with:

Code: Select all

<topic id="someID">
<title>Title of Help Topic</title>
...
then the properties file would contain a pair

Code: Select all

someID=topics/intro.dita
Based on the id value (someID in this example) your application should read the value associated with the key someID from the properties file, that is topics/intro.dita, and invoke the CHM with the command:

Code: Select all

hh.exe  help.chm::/topics/intro.dita

Regards,
Sorin